FASTEST PCs %
THE LATEST
SPEED DEMONS
TOP
WINDOWS APPS! — ”
PICK THEIR 10
FAVORITE
- PROGRAMS
LUS!
e |
thbhaid Pa vero atoms
VISUAL C++ ch aT Vena AA aa aaa |
GREAT GOLF GAMES pp Br ay Fr we ey ea ste =| a ¢ is
BIOS BASICS or E = Mt ut Ue belf ea eat ol i — = = = : -
Sees ea A
ESTED ASIANS 20 FEST
64/128 VIEW
Gazette celebrates its tenth
birthday with this issue—and launches a
new column to help celebrate.
Tom Netsel
hat were you doing
ten years ago this
month? If you hap-
pened to visit a news-
stand, you may have picked
up a new magazine called
COMPUTE!'s Gazette.
| was working at the Uni-
versity of Central Florida in
Orlando, and | had just
bought a 64. | was wonder-
ing what to do with it when |
spotted a Gazette at my lo-
cal grocery store. I'll have to
confess that | missed the
first issue. | didn't see Ga-
zette until the second issue
hit the newsstand, but I've
been hooked ever since.
Gazette was billed original-
ly as being “for owners and
users of Commodore VIC-20
and 64 personal comput-
ers." As time passed and
Commodore introduced the
Plus/4, the 16, and the 128,
Gazette's coverage expand-
ed to those machines. But
when the smoke finally set-
tled over the personal com-
puter battlefield, the 64 and
128 emerged as the survi-
vors, and Gazette narrowed
its editorial focus to those
Commodore veterans.
Speaking of veterans, as
| browse through the mast-
head of that first issue, | see
the names of four people
who are still associated with
the magazine. Regular read-
ers will recognize colum-
nists Jim Butterfield and
Fred D'lgnazio, but two oth-
er veterans may not be as
familiar. Terry Cash is now
copy production manager,
and De Potter is production
manager. Without their val-
ued assistance, there
wouldn't be any magazine.
Editorial’s staff has
changed frequently, but Ga-
zette’s goal of providing its
readers with the best of Com-
modore-related information
and entertainment has not
changed. In large measure,
each Gazette editor has re-
lied on 64 and 128 owners
who are willing to share
their knowledge with our
readers. From that first issue
through the one you read to-
day, we’ve encouraged you
to submit articles and pro-
grams for publication. That
need is just as strong today
as it was a decade ago.
Some things don’t change.
Change is inevitable, how-
ever, and you'll see it in this
issue with the addition of a
new column. Over the years
we've published original pro-
grams and reviewed com-
mercial software, but we've
seldom covered public do-
main programs and share-
ware—until now. GEOS col-
umnist Steve Vander Ark ex-
amines this vast source of
programs in his new col-
umn, “PD Picks.”
The programs Steve will re-
view and recommend can
be found on_ bulletin
boards, commercial online
services, user group librar-
ies, and elsewhere. If you
can't locate a convenient
source for these programs,
look for them on our month-
ly Gazette Disks. These pro-
grams—unlike the Gazette
type-ins—are not copyright-
ed, and you may distribute
them freely. All we ask is
that you honor the fee re-
quests of shareware authors
if you use their programs.
In closing, I'd like to
thank all of you devoted
Commodore users for your
support over the past ten
years. Without your help, Ga-
zette would have folded
years ago. But with it, look
for Gazette each month for
years to come. o
GAZETTE
64/128 VIEW G-1
Gazette marks a milestone with this issue—ten years
of serving the 8-bit Commodore market.
By Tom Netsel.
11 YEARS IN 8-BIT HEAVEN G-3
In 1982, dozens of home computers were struggling
to pull ahead of the pack—then, along came the
Commodore 64.
By Larry Cotton.
REVIEWS
Jara-Tava, Mathbooster, and Flyer.
FEEDBACK
Questions, answers, and comments.
PD PICKS
This new column focuses on the best of public
domain and shareware programs.
By Steve Vander Ark.
MACHINE LANGUAGE G-18
To read a file successfully, you must know how it ends.
By Jim Butterfield.
G-8
G-14
G-16
PROGRAMMER’S PAGE G-20
More great programming tips from readers.
By Randy Thompson.
BEGINNER BASIC G-22
Here's how to activate your user port.
By Larry Cotton.
D’IVERSIONS G-24
The 64 can be a toddler's ideal first computer.
By Fred D'Ignazio.
PROGRAMS
Ultimate ML Monitor (64) G-25
Rascals (64) G-31
Scud (64) G-33
Cryptarithm Solver (64) G-36
Flasher 64 G-37
Type-Sim (64/128) G-39
JULY 1993 COMPUTE
Gt
PUMP UP
YOUR PRODUCTIVITY!
i The Gazette Graphics
Harness the potential of your, Getta
64 and 128 with these Do it all with Commodore
graphics!
powertul programs. fee Wet een i-
Get more work out of your 64 and 128 Seca Deane 128
with these two new disk products from 128 Graphics Compactor,
64 Animator, VDC Graphics,
issolve 128, Super Slideshow,
128 Animator, 1526 PrintScreen,
COMPUTE's Gazette — the 1992
Best of Gazette Utilities, and
the Gazette Graphics Grab Supratechnic, Medium-Resolution
Bag! Graphics, Screen Maker, GAS!64—
The 1992 Best of Special Edition, GAS!128-Special
Gazette Utilities paren
Seize control of your operating
system and your world!
Here's what's on it-MetaBASIC 64,
MetaBASIC 128, Quick, Sprint Il,
Ultrafont+, RAMDisk 64, RAMDisk 128,
BASSEM, SciCalc 64, List Formatter,
MegaSaueeze.
a SS SSS
| ___ Check or Money Order __ MasterCard _ VISA
| want to pump up my productivity! Please send me the
| @ disks checked below at $11.95 each. Credit Card No. Exp. Date
| :
| __The 1992 Best of Gazette Utilities Saree aaa
___ The Gazette Graphics Grab Bag Daytime Telephone No.
lia Subtotal ene
___ Sales Tax (Residents of NC and NY please add appropriate sales tax for your
| area. Canadian orders, add 7% goods and services tax.) Address
| _— Shipping and Handling ($2.00 U.S. and Canada, $3.00 surface mail, $5.00 City
| airmail per disk.)
| __ total Enclosed State/Province ZIP/Postal Code
|
|
F Nail this coupon to COMPUTE's 1991 Utilities, 324 West Wendover Ave., Ste. 200,
L MasterCard and VISA accepted on orders with subtotal over $20. Greensboro, NC 27408.
YEARS IN 8-BIT HEAVEN
BY LARRY COTTON
THE YEAR WAS 1982.
The Vietnam War Memorial was dedicd in Washington, D.C.
England and Argentina fought over the Falkland Islands.
The Equal Rights Amendment lapsed without ratification.
The St. Louis Cardinals won the World Series.
Barney Clark became the first person to receive an artificial heart,
the Jarvik-7.
And in the autumn of that year, the Commodore 64 personal —
computer was born.
ommodore International, a dar-
ling of Wall Street investors at
that time, was known primarily
for its calculators; the PET series of
computers; and a successful, albeit
memory-deficient older sibling of the
64, the VIC-20. The company was run
by the inimitable Jack Tramiel and
sons, a team famous for squeezing
the most bang from a buck.
The personal computer market was
in a frenzy at the time, and Tramiel
brazenly introduced a new computer
called the Commodore 64. This new
machine was priced at $595, a ridicu-
lously low price for that time. A disk
drive or a monitor were extra.
The Field
The 64's major competitors were the
Apple |l+ ($1,530), Atari 800 ($899),
IBM PC ($1,565), and TRS-80 Model
Ill ($999). The 64 was exactly the
machine the world had been holding
its breath for, with a third more built-in
memory than the Apple Il+—four
times more than the Atari 800—yet
priced at two to three times less than
the Apple and a third less than the
Atari.
The 64 featured (as it does today)
a breathtaking 16 colors; 40 charac-
ters per screen row; eight Movable
Object Blocks (sprites); and, best of
all, an unbelievable 64K of random
access memory, 39K of which was
available for BASIC programs. Even
without a drive and color monitor, the
64 was still far and away the feature
leader with outstanding color, graph-
ics, and an integral three-voice music
synthesizer. Its musical talents alone
rivaled those of many dedicated: key-
board synthesizers at the time.
| must confess that | was not one of
the original personal computer enthu-
siasts. | hadn't assembled an Altair in
my basement back in the 1970s. My
computer-related background consist-
ed of occasionally perusing Byte mag-
azine and assembling a few Circuit
Cellar projects. Later, my interest
expanded into creating some original,
but primitive, rats-nest circuits around
various Radio Shack chips. One such
device featured four toggle switches
to input data to a tone-generating
chip. It could play tunes stored in its
minuscule 1K of memory! | began to
see the need for a real computer.
Full List Price
After extensive comparative research,
| decided to invest in a 64. | bought
the shiny little machine (serial number
10917, with no colored bars in the
logo) from a nearby dealer for full list
price. | sold my prized 1959 Mer-
G-4 COMPUTE JULY 1993
cedes to raise the cash to finance it.
In addition to the computer, | proudly
took home a disk drive (instead of the
more common Datassette tape drive),
a printer, and a 13-inch color televi-
sion to use as a monitor.My sons,
David and Michael (then 13 and 10),
and | cleared some working space
and unpacked each component with
loving care. With great anticipation
and excitement, we connected the
parts with cables, plugged them into
the wall, and gingerly threw the power
switches. Everything worked beautiful-
ly! We were thrilled!
As we tentatively put our new toy
through its paces, we marveled at its
wondrous capabilities. The only
demonstration program our Com-
modore dealer supplied with the 64 (in
anticipation of a wildly successful
Christmas selling season) showed
Santa Claus sailing around a chimney
and surrounded by flurrying snow, all
the while accompanied by back-
ground music playing “Jingle Bells.”
Software Shortage
Our giddiness soon diminished with
the slow dawning that, however won-
derful the computer itself was,
Commodore had introduced the 64
with virtually no available software.
The company's first ads had vaguely
promised a word processor; a data-
base; a spreadsheet; and several
games, including Gorf, Visible Solar
System, Radar Rat Race, Mole Attack,
Avenger, Ace of Aces, and Jupiter
Lander.
With a dearth of software, we duti-
fully turned to the user's guide and
began teaching ourselves to program
in BASIC. My first program (beyond
the sophisticated 10 PRINT “HELLO”)
was one | called Tunnels. This gem
printed multicolored rectangles to the
screen that overlapped in increasing
and decreasing sizes. It was eventual-
ly published in a series of demos
called “Baker's Dozen” that were pub-
lished in the January and February
1985 issues of COMPUTE!’s Gazette.
(That was back when COMPUTE had
an exclamation point.)
Magazine Scene
After tiring of driving 45 miles every
month to my dealer, | started a sub-
scription to COMPUTE! in February
1983 and voraciously read every word
written about the 64. That was when
COMPUTE carried articles and type-in
programs for all of the popular PCs of
the day. Charles Brannon, Jim
Butterfield, and Richard Mansfield
became my gurus of the 64, educat-
ing me on every aspect and minutiae
of video, inputs, outputs, machine lan-
guage, and math. | snipped hundreds
of articles from that magazine and
from Gazette after it premiered in July
1983.
Articles in that first Gazette includ-
ed a review of the strange Exatron
Stringy Floppy, a mass storage device
that's sort of halfway between a cas-
sette recorder and a disk drive. There
was a column by Fred D'Ignazio
called “Computing for Kids,” and tuto-
rials on sound, reading paddles in
BASIC, accelerated IF statements,
and joysticks. | still have my volume 1,
number 1 safely stashed away with
other prized memorabilia.
Many other Commodore-specific
magazines have appeared—and dis-
appeared—during the past 11 years,
among them Ahoy!, Commander,
Transactor, Midnight Gazette,
Commodore Magazine, Power Play,
and RUN. Today, only the Gazette
section of COMPUTE remains.
Software at Last
Commercial software soon started to
catch up with 64 sales, and’! could
finally put my 64 to work. Among the
first programs | bought for the 64 were
Since the Commodore 64's debut in 1982, worldwide sales of it and the 64C, shown here,
have topped 10 million.
the Commodore Macro Assembler
Development System, Editor Pak,
Word Machine, Name Machine and,
Totl Time Manager 2.6. Although it has
long been excelled by other assem-
blers, | still use MADS for my feeble
attempts at machine language pro-
gramming. The first BASIC program |
ever typed in was a sprite editor by
Donald A. Pitts. It appeared in an arti-
cle called “A Shape Generator for the
Commodore 64” that was published in
COMPUTE (November 1982) .
SpeedScript
Perhaps the most famous type-in pro-
gram ever published in any computer
magazine is SpeedScript, the pro-
gram that I’m using to write this article.
It was written by Charles Brannon and
first appeared for the VIC-20 and 64 in
the January 1984 Gazette. Updated
several times over the years, its latest
version, SpeedScript 3.2, was pub-
lished in May 1987. The program has
been enhanced many times, allowing
users to customize the program to
their liking. Among these programs
are SpeedScript-80, an 80-column
version; SpeedCheck, a spelling
checker; SpeedSearch, a fast utility
for finding any phrase within a
SpeedScript file on disk; SoeedCount,
a word-counting enhancement;
ScriptRead, a fast SpeedScript file
reader; and Instant 80, a true WYSI-
WYG preview for SpeedScript. Some
of these enhancements were pub-
lished in Gazette and others appeared
in COMPUTE when it still published
type-in programs. (All of these pro-
grams are still available on the
SpeedScript disk.)When | considered
myself proficient in BASIC (| wasn't), |
wrote a 92-block program called
Muzic! which | attempted to package
and sell. | think | sold a grand total of
four disks—and these probably went
to my 64-owning friends.
Meanwhile, back on the hardware
front, finding the television hookup
inadequate, | bought my one and only
upgrade for the 64—a 1702 monitor.
I'm staring at it still. What a wonderful
improvement! No more zigzag lines
and blurry characters.
Rabbits and Snails
Although it represented a quantum
leap in data transfer speeds over the
interminably slow tape cassette, the
1541 disk drive soon earned a reputa-
tion of its own for snail-like loading
and saving (90 blocks—23K—in
about a minute) and an easy-to-mis-
align read-write head.
To alleviate the first problem, |
bought an Epyx Fastload cartridge. If
there ever was a 64 accessory that's
deserved to become a classic, it's this
cartridge. Soon thereafter, | read an
article on how to add an on-off switch
to avoid plugging and unplugging the
cartridge to accommodate programs
which did or didn't use it. My
Fastload's been sticking out of its port
ever since.
The head alignment problem was
much more frustrating. | read many
articles, sent the 1541 to several
repair shops, and drilled holes in the
bottom housing to access the stepper
motor's adjustment screws. Finally,
someone managed to fix it, and it's
been fine ever since.
Price Wars
As the years flew by, the 64’s price
plummeted. By June 1983, the 64’s
mail-order price was $395; a year
later, it had slipped to $199; in May
1987, $169.95. Today you can buy
one for about $150.
Part of the reason for its decreas-
ing price was the onslaught of other
low-priced competitive machines
which vied for the computerphile’s
attention: APF Imagination Machine,
the Apple-compatible Franklin Ace
1000 and 1200, Timex/Sinclair 1000
and 2000, Apple Ilc, more Tandy
machines, Texas Instruments 99/4A,
Coleco Adam, Atari 520ST, and IBM
PCjr (born November 1983 and died
March 1985). When used 64s began
to hit the want ads at rock-bottom
prices, | bought a spare.
Meanwhile, Commodore wasn't
resting on its laurels. While simultane-
ously boosting production and cutting
the price of the 64, Commodore was
trotting out the portable SX-64; the
anomalous Plus/4 and 16; the 128 and
128D; the breakthrough Amiga family;
and the IBM compatibles, variants of
which became especially popular in
Europe. None of those computers
approached the sales of the 64, which
is still being built and sold internation-
ally today as the cosmetically
enhanced 64C.
Software Bonanza
Within 18 months after its splashy
introduction, more and more software
companies had climbed aboard the
lucrative 64 bandwagon. Ads for pro-
grams like EasyCalc, Sprite-Magic,
Mail Mate, Choplifter, Sargon II,
General Ledger, Busiwriter 64,
Monopoly, Centropod, Software
Automatic Mouth (an amazing voice-
synthesis program known as SAM),
Script 64, Typing Tutor, SuperTerm,
and WordPro Plus/64 proliferated in
Commodore-specific magazines.
Programmers who knew the 64
were in demand. Even Breaderbund
Software was advertising for software
authors in December 1983.
A New Operating System
In March 1986, Berkeley Softworks—
now GeoWorks—introduced GEOS,
the Graphic Environment Operating
System. Although I'm not a GEOS fan
(without an REU and extra drives,
molasses is fast in comparison), |
seem to be in the minority. Com-
modore quickly adopted GEOS as its
“official operating system” for the 64,
and many apparently excellent soft-
ware products have greatly helped
the 64 stay alive and kicking.
Gazette’s GEOS column first ap-
peared in September 1987.
Applications
By November 1988, 64's were being
pressed into service for almost every-
thing but cleaning the kitchen sink. A
tadio station in Phoenix used one to
JULY 1993 COMPUTE G-5
report activities on a call-in talk show.
Many people, such as one avid user
in Niceville, Florida, used their 64’s to
track stock market investments. One
commercial application used 128s to
monitor and control furnace settings in
a large apartment complex.
Teachers calculated students’
grades with them in Richmond,
Virginia. A fireman in Tulare Country,
California, used his for eliminating
some of the paperwork involved in
running a fire department. A preacher
in Asheville, North Carolina, tracked
the recreational activities of his church
with his 64. A Union, lowa, farmer
used a spreadsheet running on a 64
to keep an eye on his farm's financial
condition. At Bosch Power Tools,
where | work, we used a 64 for years
to calculate and generate graphs of
motor-performance curves.
Hardware
While millions of owners were putting
their 64s to creative uses, hardware
manufacturers were busy as well. Here's
a short list of peripherals that have made
life easier and more interesting.
* Card? printer interface (Cardco)
® VIC-1520 plotter/printer
(Commodore)
® Fastload cartridge (Epyx)
* Command Control Trackball (Wico)
® The Voice Box voice synthesizer
(The Alien Group)
® Hearsay 1000 voice
synthesizer/recognizer (Hearsay)
® Minimodem-C (Aprotek)
® Super Graphix printer interface
(Xetec)
* SWL shortwave listener cartridge
(Microlog)
® Flexidraw 170-C light pen (Inkwell
Systems)
® Stringy Floppy storage device
(Exatron)
® Ultimate Interface (Schnedler
System)
® Lt. Kernal hard drive (Xetec)
* ComputerEyes video digitizer
(Digital Vision)
® MW-302 printer interface (Micro
World Electronix)
* Home Control Interface (X-10)
® Interpod interface between comput-
er and various peripherals
(Limbic Systems)
® VIC 1650 modem (300 bps, original
ly $150) (Commodore)
® 1750 RAM expander (Commodore)
* Sonus MIDI interface (SOFTpacific)
* Video Byte II video digitizer (The
Soft Group)
© 4351 mouse (Commodore)
* Ten Key Pad (Quality Computer)
© Super Expander 64 cartridge
G-6 COMPUTE JULY 1993
(Commodore)
° 1581 31-inch drive (Commodore)
* Bodylink fitness system (Bodylog)
Perhaps the most bizarre peripher-
al of all was the heavily advertised
Spartan adapter for interfacing the 64
to Apple II/Il+ peripherals (Mimic
Systems). I’m not sure it ever attained
volume production.
Software
Here are some of my favorite pro-
grams and applications for the 64.
Chances are you probably have some
of these, too.
® SpeedScript 3.2 word processor
(COMPUTE Publications)
© Instant 80 80-column preview
(COMPUTE Publications)
© Print Shop card/sign maker
(Broderbund)
® Doodle drawing program (City
Software)
© Flexidraw (Inkwell Systems)
® Generic Librarian MIDI software
(The Music Software Exchange)
® Simon's BASIC cartridge
(Commodore)
® PractiCalc spreadsheet (Computer
Software Associates)
® CADPAK-64 drawing program
(Abacus)
® Screen Graphics-64 graphics
enhancement to BASIC (Abacus)
® Tax Master (Master Software)
® Datafile (RUN magazine)
How about a few games?
® Space Taxi (Muse)
© Summer Games II (Epyx)
® Impossible Mission (“Stay awhile;
stay forever!") (Epyx)
® Raid on BungelingBay
(Broderbund)
® Tetris (Spectrum HoloByte)
® Advanced Dungeons & Dragons
(Strategic Simulations)
© Bard's Tale (Electronic Arts)
® Pinball Construction Set
(Electronic Arts)
® Zork series (Infocom)
® Dragonworld (Trillium)
© Flight Simulator II (subLOGIC)
® Choplifter (Broderbund)? Where in
the World Is Carmen Sandiego?
(Broderbund)
In a Babbage’s one day, | ran
across Light and Temperature Labs,
scientific experiments from Hayden
Software. They were on sale for $10
each. In case you missed these sadly
underpromoted products, each one is
a series of scientific experiments on
disk, supported by great documenta-
tion, along with an interface box which
connects to a joystick port. The box
accepts either a photocell or an accu-
tate temperature probe—also fur-
nished! What a find!
Gadgets
Over the last decade-plus, I've whiled
away quite a few hours building and
writing supporting software for my
own collection of miscellaneous gad-
gets that connect to the user, car-
tridge, or joystick ports. Some of these
include the following.
® A numeric keypad
® A plotter (although plodder would
be a better name), which could
draw with four felt pens whatever
appeared on the monitor screen
® A MIDI interface (I still use it almost
daily with my spare 64)
© A relay interface which controls
small electrical devices
® A room measurer which uses an old
Wico trackball mechanism to roll
around the periphery of a room, tak-
ing the room's measurements
® A model “drummer boy” which uses
relay-switched solenoids to control
drumsticks
® A device to synchronize taped
music and kaleidoscopic images
(works with a four-track tape deck)
© A talker, based on a Radio Shack
voice synthesis chip
In Retrospect
I've spent literally thousands of pleas-
ant hours with my 64 over the past 11
years. The computer is still perfect for
the vast majority of my purposes.
Back in May 1988, Rich Mcintyre, then
Commodore's senior vice president of
sales and marketing said, “Eight-bit?
Who cares? You're buying a machine
for a specific reason. If it satisfies that
need, it’s never obsolete. Only your
requirements become obsolete. .. . If
the need continues to exist until the
year 2000, that machine is still satis-
factory.”
Maybe Jim Hilty said it best in last
December's issue of Gazette. “The 64
has always been kind of a barnstorm-
ing computer .. . just plug it in and fly
by the seat of your pants. It’s a fun
computer, a truly personal computer, a
computer that an individual can enjoy
programming, a welcome friend.”
Thank you, Commodore. Thanks
also to everyone who builds the hard-
ware, writes the software, and publish-
es information about this marvelous
machine that is the Commodore 64,
Here's to 11 more happy, productive,
profitable, educational, and entertain-
ing years in 8-bit heaven. Q
Thousands of Commodore Owners Choose Us
As Their One Stop Supplier . Here's Why!
* Largest Selection of Commodore Software in the U.S.A.!
Nobody in the Commodore market is more committed to your
Commodore than we are. We have well over 225,000 pieces of
hard to get software in stock to service your every need. If
you've heard of a product, odds are that we can locate it for you.
And, we stock most major Commodore titles that are still in
production.
* Hardware & Peripherals.
Although we can't get keyboards and disk drives any longer, we
can offer disks, modems, cables, interfaces, and much more.
* Used Software Selection.
Our regular customers know how to stretch their software
dollars shopping our Used Software Listings.
* Un-Advertised Specials.
Our regular customers enjoy VIP service and great bargains
that are hard to pass up.
* Expert Technical Support.
Asaregular Software Support customer, you have access to the
most knowledgeable Commodore technical departments in the
country. Of this, we're darn proud.
* Friendly & Courteous Order Takers.
You'll have a hard time finding order takers as anxious to help
you as Sandy, Mike and Claressa.
* Fast Order Processing.
Thanks to our automated computer system, huge inventory and
efficient shipping staff, most orders are processed the same
day.
* Walk In Sales Department.
We welcome visitors to our warehouse outlet. The same great
deals are available and best of all, no shipping charges.
* Worldwide Distributor Of Major Products.
Ever hear of ick, Super Snapshot, Super 1750 Clone, and
the 1581 Toolkit? We've been actively involved in the ground
up production and world-wide distribution of these and many
other fine Commodore products.
* Purchase From Us With Confidence.
We were very pleased when the Better Business Bureau came
to us and told us that our out-
SOFTWARE SUPPORT
INTERNATIONAL
C-64/128 Specialists For Over Six Years
Check Out These Examples...
GAMES
Leaderboard Golf ..
Beachhead Triple Pack
Nord & Bert..........4
Blue Angels (Special)
Trump Castle Casino
Bureaucracy 128 ....
Defender of the Crown
Beyond Zork 128 ...
4x 4 Off Road Racing
Arcade Smash Hits
Batman/Robocop Bundle
Jeopardy 1-2-Jr. Bundle .........
EDUCATIONAL
Thinking Cap
Stickybear Mat
Carmen U.S.A.
Typing Tutor 3
Word Attack..
Donald's Alphabet
Sky Travel........
Perfect Score SAT
Word Spinner...
PRODUCTIVITY
Super 1750 Clone
Newsroom
Certificate Maker
Cadpak 64
Superbase 6401128.
Video Title Shop .
Animation Station .
standing reputation qualified
us as members in their organi-
zation. We're here to stay, not
a fly by night, here today and
gone tomorrow outfit,
MONEY-SAVING
PRICES!
* Extensive Catalog.
Our contacts at other mail or-
der companies have told us
that producing a catalog such
as ours is too time consuming
and worst of all - too expen-
sive. We say it's the least we
can do for our customers, and
wouldn'thave it any other way.
Simply call or write for your
free copy.
Outrageous Pages .
"ans Bob's Term Pro 64..
Items Listed Above Do Not Include Shipping. Call Or Write For Your Free
Catalog Listing Hundreds Of Products And Special Offers For Your
Computer. Our Order Takers Are On Duty 6:00 a.m. - 5:00 p.m.
M - F and 7:00 a.m. - 3:00 p.m. Sat. -
SOFWARE Software Support Int.
a
Pacific Time.
ane A-10
ancouver, Wa 98661
Snot sees
Te 2700 N.E. Andresen Rd.
Sliopont :
(206) 695-1393
CALL TOLL FREE TODAY! 1-800-356-1 179
Major Credit Cards Accepted.
Circle Reader Service Number 190
REVIEWS
MATHBOOSTER
| don't think there's a kid left
in the universe who doesn't
respond to falling images on
a computer screen with a de-
sire to stop them, to be the
good guy, the hero. Witness
the fact that even kids who
own videogames’ and
whose parents won't give
them quarters can't resist
checking out the games in
malls and stores.
What does this have to
do with an arithmetic drill-
and-practice program for
the 64? Boosting falling sat-
ellites back into space is the
premise behind Mathboos-
ter, a program imported
from Australia.
To prevent these satel-
lites from tumbling down
and crashing into the earth,
students must quickly and
correctly solve math equa-
tions. This program provides
a drill with positive reinforce-
ment that's fun.
Mathbooster is not a teach-
ing program. It's designed
to reinforce through practice
the math skills that the stu-
dents have learned in class.
When the game starts, sat-
ellites are strung across the
sky, and a booster rocket
waits atop its launch pad. Be-
low each satellite is an equa-
tion. This first wave of satel-
lites begins to fall. Using the
appropriate keys, you place
the launch pad beneath a
satellite and type in an an-
swer to the equation. Press-
ing Return or the space bar
launches the booster rock-
et—only if the answer is cor-
rect. If so, the booster rock-
et then pushes the satellite
back into space. If the an-
swer is incorrect, the satel-
lite continues its fall toward
earth. Once you've success-
fully propelled the first wave
back into orbit, a second
wave begins to fall—at a fast-
er rate than the first!
G-8 COMPUTE JULY 1993
The third wave consists
not of satellites but the
space shuttle! It’s a very
large space shuttle that
needs a very large booster
rocket to restore it to orbit
Points are accumulated for
boosting satellites and the
shuttle back into space. If a
satellite or the shuttle reach-
current problem type,
change it, change the
speed settings, load and
save the problem type and
settings, or return to the
game. When you view a
problem, the screen lists the
type of operation that’s be-
ing displayed: addition, sub-
traction, addition and sub-
Boost falling satellites back into space with Mathbooster, a
program that combines arcade action with math drill.
es the ground, the game
ends. As in arcade games,
the program keeps track of
current high scores.
Mathbooster comes with
ten sample games already
prepared. However, its pow-
er comes in the variations
you can create by altering
the type of problems. The
main menu lists three op-
tions: Start the game, Load
different problems, and
Change problems. The first
one is self-explanatory. The
second option lets you load
other files of problems al-
ready created and saved on
disk. The third option lets
your create these other
math files.
The first menu under op-
tion 3 allows you to view the
traction, multiplication, divi-
sion, or multiplication and
division.
Next, it tells you what
form the equation will take,
such as A + B =C. Then,
for each A, B, C, or other var-
iable, the program sets the
Parameters. For example, if
you're practicing addition
where the sum, C, never ex-
ceeds 12, then A’s parame-
ters would be 1-6, and B's
would be 1-6 also.
The next option is to
change the problem type.
The Operations List lets you
do this. For each operation
there’s a screen that guides
you through the steps of
choosing the parameters for
the variables. This requires
care and thought, but it isn’t
difficult. The screen instruc-
ions and the manual enable
you to create the exact drill
you want for your student.
Speed Settings govern
the actual game, controlling
how fast the satellites and
shuttle fall, how quickly that
speed increases, when the
irst shuttle appears, how
many times per wave it ap-
pears, and whether or not
he sound effects are
urned on. With these you
can customize a game to
best challenge students with-
out overwhelming them.
The manual is thorough.
Aside from a couple of ty-
pos, it provides helpful in-
sight and guidance in devis-
ing games that will provide
the kind of drill that will
most benefit your children
or students. Included are
some appendices describ-
ing the ten sample games al-
ready on the disk and provid-
ing some examples of how
to set up game formats.
Mathbooster also carries its
own copying program to al-
low you to make backups.
Mathbooster is the sec-
ond Free Spirit import from
Australia that we've re-
viewed. These two pro-
grams by Satchel Software
are copyrighted by the Min-
ister of Education and are
used by the school systems
in South Australia. (Mathboos-
ter’s manual even makes ref-
erence to the South Austra-
lian curriculum modules.) As
with the first program, Dr.
Spellingstein, we are im-
pressed by the solid pro-
gramming that provides the
actual computer game yet al-
lows you to create and mod-
ify within the program to
make it fit your needs. It's
powerful, flexible, and easy
to operate.
Kids love computers and
computer games. Most kids
also love learning, although
they'd deny it if you'd ask
Only $24.05 x ts
Fon Graphies Machine
FUN GRAPHICS MACHIN FGm) 1S AN “ALL-IN-ONE” GRAPHICS
PROGRAM FOR THE C=64. WHAT CAN BE AT
ONLY LIMITED BY YOUR IMAGINATION, T
BUSINESS CAROS
CUSTOH LABELS
VIDEO TITLING
NEW: RS
EO WITH FGM IS
A FEW EXAMPLES:
i
WORKS WITH
1541, 1571
& 1581 DRIVES
iS
3°,
Bar
BYarne,
meln
PHICS AND
NCLUDING:
=
2
voz
zvszc
vt
GEOS SCREENS BY RESETTING
COMPUTER THEN PHICS MACHINE.
BOARD OVERLAY ---$3.50 EA
128, SX-64) OR C64 IS SHIPPED
FUN GRAPHICS MACHINE D T
WHAT FUN GRAPHICS MACH LL ABO
im CALEND!
FGm OVERLA
STATE COMP
Fom UPDATE
PLEASE ADD FOR
FOREIGN ORDE
CANADA/MEXIC
UND:
ENT--$5.00
6,.5--$2.00
The FGM Connection, P.0.Box 2206, Roseburg, OR. 97470
FOR MORE INFORMATION CALL 503-673-2234
SUMMER SIZZLER--15% OFF Coct * C-64 ** C-18
€7/1-3V/93) CaSalec Tax axcl’d * Pluc/4 * C-%
State PSG A/3 Blk/non-C= or B/2 Blk/C= Pratel
PSG/PratShp Grapce Sd/sides G/games H/math
ITEM -------- NUMBER OF SIDES or ID /COST/ 33H
2 KJ¥ Bible—2 ed Mue, A or B PSG & G 36/35+4
B: Holiday-2 Hus+6 A or B PSG -Hol/Relig 8/ 7+2
? SHarioSKrkout,Pokr,36 G-Fin-Grfpx,DB 6/ S+2
D: 728 Potpourri —— UT/ PR/ ED/ G/ TE 6/ S+2
€: PLUS/4 Combo ------ UT/ PR/ ED/ G/ TE 6/7 S+2
: Bkel48p>--Inet Activities C= or Apple
Apple Fun-..Logo-..Mus---Reg. $3.95 B8k/ t2
G: Educ Pack A--M-S-E-GE-Etc----#45 Pres 12/13+2
H: Educ Pack 8--M-S-8&-GE-Btc-~---600 Pree 6/70+7
3: Bkeltt9p>---C64 or T28-Amaz G/ $9.95, Bk/ 3+2
2G Pack A-MacioBren--SMar-SMar Il-Star3
lue Tetris Clones-C64/64C/C-2&80e) 2/ 9+1
2 Pack B-Teshmn,StreaideAcOmOtpet,+ 2/ 9+4
L: People-554 Ml-Fm-Child AorB PSG +Prge 7/ 8+2
: Diek Notcher-Use back of DS/DD disks! DN/ 3+1
N: Recipe Potpourri-178 recipes-Programe 3/ 7+1
3 KJ Bible-+/4--Txt files + 1 ed Progs 30/30+4
? G Pack C/C-128-60+-Star Trk-Concent. 0/B+2
Q: Musique Claseique-
3: Pats--—347 Domestic e
8: SPORTS-419 Hix-Bebll/Ftbll/+ PSG+P.
: Cartoon Charactere-—-Mixture 202 P
e 5/2+2
2/ S+2
: Comptr Parade-255 PSG-Ap/C=/IBM Logos 2/ 5+2
¥: Fastcad ¥1 (Enh CAD 3.0) +Suppt Files 5/+2
: Fun Graph Mach DemotUT+SO Fntc+HR DMP 3/ 6+2
2 41/71/81 UT Caombo-Rdr/Copr/tive/’ etc 6/2+3
: GEOS Info-Programmer's Manual (89p) +
GEOS 10 Documentation (27p)--<(C-64) 3/ +2
Zt KJV Bib-128 n/40-80 resder/printer +
2 each of music, A or B PSG, & games 36/35+4
Available-JIM HBHL COLLECTION +/4 * C-%6 * C-64
JH-00--Bible-Time +/4-64-25+ Relig. Pres 3/ 6+1
JH-Ot-Plue/4 G Pack-Hac 60 plus games 19/30+5
JH-O2--T-Pack +/4--Terminal es & +Term 4/ 91
JH-03--C-%6 Combo-50+ Pree. Runs on +/4! 2/ 41
JSH05--HALGipd>-Asemblr+4 -Spdecrptt+4 4/ 9+
JH-07--C64-Pentd Wd/Fle—C64 v +4 SW ROM 2/ S+2
Send uc a ‘SASE' for additional informatation.
CATALOGS: C64/128-47p [82+2] Pluc/4-8p (2+1)
PYMT-MO/CK WS8)--Ca. Ree +8.25% tax/item total
No COD's! Shipping USPS [COomes./Intern'l Rates]
PROCESSING: Bank Gak/HO-Firee **® Chk w/cleared.
SEND/PAYABLE TO: Kenneth Franklin/KF-PD SOFTWARE
- P.O. Box 470464 * Los Angeles, Ca. 90047-0464
Mainly, we have the PD Sele Commodore Library
THANKS FOR HELPING US INTO OUR ‘THIRD’ YEARE
Circle Reader Service Number 197
ATTENTION
ALL COMMODORE 64/64C,
AND COMMODORE
128/128D OWNERS
A complete self-tutoring BASIC programming course is
available that starts with turning your computer on, to
programming just about anything you want! This course
is currently used in both High School and Adult Evening
Education classes and has also formed the basis of
teacher literacy programs. Written by a computer
studies teacher, this programming course is one of the
finest available today. This complete course of over 220
Pages is available for the COMMODORE 64/64C,
and for the COMMODORE 128/128D computers.
This course (Volume 1) will take you step by step
through a discovery approach to programming and you
can do it all in your leisure time! The lessons are {filled
with examples and easy to understand explanations as
well as many programs for you to make up. At the end
of each lesson is a test of the information presented.
Furthermore, ALL answers are supplied to all the
questions, programs and tests. Follow this course step
by step, lesson by lesson, and turn yourself into a real
programmer! You won't be disappointed!
FOLLOW-UP COURSE (Volume 2) - A 200 page
self-learning course for each of the above named
computers dealing exclusively with sequential and
relative files. Our teacher uses a unique approach to
file handling that was designed especially for students
with absolutely no prior file handling experience. Yet by
the end of the course you will be able to make up many
of your own personal and business file programs. All
our courses involve active participation by the learner.
You do the specially designed examples, read the
complete explanations, follow the instructions, answer
the many questions, do the tests, and check your
answers.
Each course is only $21.95 plus $3.00 for ship-
Ping and handling. We have been developing and
selling Commodore courses for over 7 years now and if
you do not think that we have the best self-
tutoring course you have yet come across, then
just send the course back to us within 10 days of
receipt for the FULL $24.95 refund.
08s eee ee
NAME ee CG
ADDRESS:
Cli
STATE/PROV: CODE:
desire the BASIC programming course (Volume 1) L]
FOLLOW-UP course on file handling (Volume 2) C]
The computer that the course is needed for:
COMMODORE 64/64CL] COMMODORE 128/128DL]
For U.S. and Can. customers, send $24.95 per course
n the currency of your country. Can. orders add 7%
GST. Overseas orders, send $29.95 U.S.
Brantford Educational Services
222 Portage Road 6 Pioneer Place
H
ewww eeeeeeeeee
P.O. Box 1327 or Brantford, Ontario
Lewiston, New York 14092 N3R 7G7
| Fax: (519) 756-6534
i Peperererttrrrrrrrrrrrtritiiiirrrtrrrtiiiiirrrrrererrir ris
G-10
64/128 PUBLIC DOMAIN SOFTWARE
REQUEST FREE CATALOG or send $2 for sample disk and catalog (RE-
FUNDABLE). Categorles Include education, utilities, games, business,
PRINT SHOP graphics, pre-tested programs and more. Rent for 75¢ or
buy as low as $1.00 per disk side or for 80¢ for 70 or more. $20 order
gets 4 free disks of your choice.
NEXT DAY SHIPPING! SINCE 1986
i CALOKE INDUSTRIES (Dept. GK) Ee
~ PO BOX 18477, RAYTOWN, MO 64133 —
Circle Reader Service Number 181
DEPENDABLE SERVICE FOR YOUR COMMODORE!
C-64, 1541, C-128, or 1571:
$25.°° puus parts
Send computer* or drive with name, ad- SERVICE CENTER
dress, phone, & describe problem. We'll | hig ae as
call with parts estimate, then repair and | 90 DAY WARRANTY
return to you insured by UPS. Payment | ON ALL REPAIRS
can be COD or VISA, M/C. Minimum (__
charge, estimate only is $20. * Include power supply.
TYCOM Inc. 503 East St. Dept. C
Pittsfield, MA 01201
AUTHORIZED COMMODORE
(413) 442-9771
Circle Reader Service Number 242
ESCAPE ROUTE
The Adventures of
Eric Hawthorne, P.I.
C-64 or C-128 In 64 MODE
ACTION/STRATEGY/BOARD GAME
Catch the infamous ICELADY before she crosses the border!
Fun for all ages!
$19.95 Check or Money Order
CREATIVE PIXELS LTD.
PO Box 592, Library , PA 15129
Circle Reader Service Number 113
COMPUTER REPAIR <a
C-64: $40.00 1541: $54.95 64C: $50.00
1541-Il: $64.95 C128: $64.95 6©128D: $74.95
1581: $64.95 BIGHES
WE ALSO REPAIR IBM Clones, Sega, Genesis, Nintendo
For more info cal: BEAR TECHNOLOGIES
Computer Sales, Service & Repair
aru) 1005 McKean Street, Philadelphia, PA 19148 Se
215-336-5295 1-800-755-5295,
Circle Reader Service Number 152
Label Maker- Uso 11 pre-designed labels or create yourown, floppy & micro
disk labels, audio & video cassette labois, and more. Use your printor's font and
color capabilities. Both Commodore 64 and 128 versions included. - $19.95
Special - both for only $35.00
Mail List Manager- Makes maillist management a snap! Print one record ata time, pick and choose
for exporting or printing, or print the entire list. Holds 300 records for each C64 list, 1000 for C128, transfer
between lists. Use new label designs created with Labe/ Maker. Both 64 and 128 versions included - $19.95
SHIPPING: - U.S. $4.50, Canada $5.50, Intl. orders $12.00. Int. orders paid by credit card or Canadian
postal money order only. Write for free catalog of Software and Leroy’s Cheatshests.
Keystone Software Dept.G P.O. Box 8369 Pittsburgh, PA. 15218
412-243-1049 Fax: 412-731-2460 Hours: 9 to 5 Eastern Time
Circle Reader Service Number 170
COMPUTE JULY 1993
REVIEWS
them. Computers and learning games
can be an irresistible combination
when blended properly. Mathbooster
provides the perfect recipe for turning
math practice into a real treat.
DAVID and ROBIN MINNICK
Satchel Software
Distributed by Free Spirit Software
720 Sycamore St.
Columbus, IN 47201
(812) 376-9964
$39.95
Circle Reader Service Number 414
JARA-TAVA
Want to take a trip to an exotic loca-
tion; hunt for buried treasure; and fight
crocodiles, sharks, and hungry
snakes? Then Satchel Software's latest
text adventure, Jara-Tava, is your tick-
et to adventure.
Jara-Tava begins, like many good ad-
ventures, with the inheritance of an an-
cient treasure map. A letter from your
dear, departed Uncle Bartholomew sug-
gests that Captain Kidd's treasure
might be found on the island of Jara-
Mau. It also warns of danger should
you go to neighboring Jara-Tava, the
Isle of Fire.
With no further urging, you're on
your way. Of course, you learn early in
the game that the treasure isn’t on
peaceful Jara-Mau but across the
shark-invested strait on Jara-Tava.
Satchel Software designed this inter-
active text adventure with junior high stu-
dents in mind. It has colorful graphics,
easy-to-use text commands, and a
challenging plot. Familiar elements
from classic literature, skillfully woven
into the game, are sure to please teach-
er, student, and parents alike. In addi-
tion to Kidd's treasure, you'll find Robin-
son Crusoe's tree house and Captain
Nemo’'s submarine, Nautilus. Also,
straight from an Indiana Jones adven-
ture, there's a golden idol that's pro-
tected by a large boulder.
Teachers in Southern Australia
have been using this text game in
their classrooms since 1988. However,
the game has only recently been li-
censed for distribution in the U.S. by
Free Spirit Software. The package
comes complete with three disks and
a 134-page combination instruction
and resource manual.
Teachers who decide to use this
game as part of their classroom curric-
ulum will be delighted with the hidden
teacher's controls built into the pro-
gram. Accessed by pressing Shift-T at
the beginning of the game, teachers or
parents can set options like help com-
mands, maps, and multiple moves.
They can also encode messages on
statues to increase the difficulty of the
game and teach students about deci-
phering codes. But don’t get the idea
that the game is only useful in scholas-
tic situations. It's a package that will pro-
vide hours of computer fun at home as
well.
n fact, the game's design is perfect
for the solitary player or for young play-
ers who want to do it themselves.
Most popular text games require verb-
and-noun commands such as Climb
Tree in order to move through the
game paths. This can be confusing to
a young player, Jara-Tava's designers
simplified the process by creating a pro-
gram that analyzes individual words,
not two-word sequences. Game play-
ers can type in whole sentences be-
cause the program searches for key-
words and strips out unknown ones.
This lets players use more natural lan-
guage in the game.
Since the game was designed with
the junior high player in mind, older,
more experienced players may not
find it challenging enough. However, it
succeeds quite well with the targeted
age group.
Maps are important in solving this
and any text game. The Jara-Tava man-
ual gives students and first-time text
game players a brief lesson on how to
keep a map. Teachers can build on
this for other map-making exercises for
their students. The section gives lei-
sure-time players new ideas for ways
to use their maps, too. All can benefit
from it.
The game itself offers several choic-
es at every point of play. Since most
people learn more by their mistakes
than their successes, experiment with
the game. Try all the options—build a
glider, ride the sub, feed the croco-
diles. You can save your game on
disk and go back to correct any mis-
takes you make. You'll learn something
new with everything you do. At the con-
clusion of the game, the screen will dis-
play how many steps it took for you to
solve the game. You can play it over
and over again, trying to beat your pre-
vious best score.
But there's more to it than just the
game. Like other software packages
from Satchel, there's a resource disk in-
cluded with this one. This disk has a
simple database, an easy-to-use word
processor, a disk copying program,
and the Tree of Knowledge guessing
game.
The word processing program is de-
signed for the junior high student who
is beginning to do research papers
and reports that need to be typed. It’s
a program that students can continue
Upgrada your Commodore systam
Refurbished Hardware
MONITORS DRIVES OTHER
b41-~ $99 CHq- F9
Wdte-
SUIEL, ONTARIO, M3L 180
Allow 4-6 weeks for delivery.
Catalogs disk on 64 format $2
APROTEK modems
Araiga-2400 Bewd—
GRIVE RO!
card—lC3
GALACTIC CONQUEST
GALACTIC CONQUEST is the best conquest game for the C64!
Command hundreds of star ships as you conquer other worlds and extend
your empire. Watch out for black holes, photon storms, stars that go nova!
and General Badguy. 1-6 players. Comes with Mario's Sister Giana,
Sanxion, Krazy-Kar and 5 other arcade quality games. Send your retum
address and $12, which includes shipping, to:
PowerdisK, 6813 Lows Way, West Jordan, UT 84084
Research works.
American Heart
Association
The classic best-selling
Commodore 64 reference
guide. Mapping the Com-
modore 64 and 64C is a
comprehensive memory
MAPPING
THE
Commodore
64 &64C
guide for beginning and advanced programmers.
To order your copy send $18.95 plus $2.50 for shipping and handling
(U.S., $4 to Canada and $6 other) to COMPUTE Books, c/o CCC, 2500
McClellan Ave. Pennsauken, NJ 08109. (Residents of NC, NJ, and NY
please add appropriate tax; Canadian orders add 7% Goods and Servic-
es Tax.) All orders must be paid in U.S. funds drawn on a U.S. bank.
Orders will be shipped via UPS Ground Service. Offer good while
supplies last.
JULY 1993 COMPUTE
G-11
Original Print Shop Graphics
Borders and Fonts.
Western Heritage
Turn your Print Shop & computer into
a real old western printing press.
Make real wild west wanted posters.
Use the wildest western graphics ever.
064128 $24.95 + s00sn usa IBM
S/H Canada $5.00 others $6.00 WA res.$1.92
Call now 569-276-6928
Write for Pree brochure & tell us what you like.
Be the first to see exciting NEW products.
COMMODORE 64/128
PUBLIC DOMAIN
SHAREWARE PROGRAMS
CALL OR WRITE FOR FREE
DESCRIPTIVE CATALOG OF
COMMODORE 64/128 PUBLIC
DOMAIN & SHAREWARE SOFT-
WARE OR SEND $2.00 FOR DE-
SCRIPTIVE CATALOG AND
SAMPLE DISK. ADULT SOFT-
WARE LISTING AVAILABLE TO
THOSE OF LEGAL ADULT AGE. Horse Feathers Graphics
N. 27310 Short Rd., Deer Park, WA 99006
Request 6.26 «1 3.5 by IBM.
DISKS O'PLENTY INC.
8362 PINES BLVD., SUITE 270
PEMBROKE PINES, FL 33024
(305) 963-7750
Circle Reader Service Number 253 Circle Reader Service Number 234
AMIGA & COMMODORE
™ CUSTOM CHIPS
and
REPLACEMENT PARTS
Lowest Prices Around
THE GRAPEVINE GROUP INC.
3 CHESTNUT STREET, SUFFERN, NY. 10901
ORDER LINE: 1-800-292-7445 / FAX: (914) 357-6243
INTERNATIONAL ORDER LINE: (914) 357-2424
Write or call for prices
Logo 1s the property of Commodore Business Machines, Inc
Circle Reader Service Number 159
No Wild, No Wildlife.
region, we would jeopardize the
culture of the native Alaskans and
untold wildlife, including a herd of
180,000 caribou. Our
last arctic wilderness
J ;
», Would be despoiled.
The Sierra Club works
to save wildlife by sav-
ing the wilderness. We
have a history of vic-
tories. And we believe,
with your help, this arctic wilderness
will remain an invaluable refuge.
> For information on how
\\2)\ you can help:
\\)'7) Sierra Club, Dept. AR
2} 730 Polk Street
San Francisco, CA 94109
(415) 776-2211
Polar bears, musk-ox, grizzlies,
caribou — more animals than you’d
find in Yellowstone — can be found
on the magnificent
coastal plain of the Arc-
tic Refuge in Alaska.
Unfortunately, this por-
tion of our last arctic
wilderness has caught
the eye of the oil in-
dustry. Right now Con-
gress is considering proposals that
would allow the oil companies to
drill there, even though reports
indicate there’s less than a
one-in-five chance oil would
be found.
If we allowed drilling in the
G-12 COMPUTE JULY 1993
REVIEWS
to use for simple reports as they enter
high school. It's also useful for people
who have never used word processing
programs or have been intimidated by
them in the past. Called Tell-a-Tale, the
Jara-Tava word processor is a very sim-
ple-to-learn program that lets you
write and then save your work to a
disk. You can also center titles,
change cases of words and letters,
work with existing files, and print out re-
ports. The program will not do more
elaborate functions like footnotes and
headers, but it's sufficient for most
word processing needs.
The database is useful for storing
word lists and simple groups of informa-
tion. The word lists can then be import-
ed into the word processor to make
spelling lists or to use in essays. Satch-
el has already begun five databases
for the user. The names are Pirates, Is-
lands, Volcanoes, Whales, and
Sharks. You can build on this basic
base by adding additional files. Each
file may be up to 29 characters. Files
may be deleted; however, the erase
function has been restricted so no
more than one file can be erased at a
time. This safeguard keeps you from ac-
cidentally wiping out your entire data-
base.
The Tree of Knowledge game pits
the player against the computer's abil-
ity to guess. There are five trees on the
disk that you can select: Animals, Pi-
rates, Whales, Sharks, and Snakes.
New information can be added to the
existing trees to make a more complex
guessing game. These can be saved
and replayed again and again.
The resource disk takes the Jara-
Tava package far beyond mere game
software. In my opinion, this one disk is
worth the modest price of the package
| by itself.
And there's still more. Take a look at
the extensive, spiral-bound instruction
manual. Tucked in the center of the
manual is a 68-page section that is
filled with activities related to the
themes found in the Jara-Tava game.
There are word games, crossword puz-
zles, word searches, drawing activities,
and group games. There are ideas for
crafts, too. You can build your own mod-
el volcano, make beanbags shaped
like whales, or do any of a variety of
activities. All the instructions are includ-
ed. As an added bonus, Satchel has
given permission for teachers to copy
any or all of the manual for use in their
own classrooms.
Allin all, Jara-Tava is an outstanding
package that does more than merely
entertain players. It stimulates and ed-
o
> Kee
effor
We live in an ocean of air,
Deprive us of it for a moment and we suffer.
know this all too well.
It’s a matter of life and breath?
‘Space contributed by the publisher asa public service.
our
from
floundering.
People with chronic lung disease — asthma, emphysema, and chronic bronchitis —
Your support of the American Lung Association can help them stem the tide.
|, ASSOCIATION”
NEW!
THE COM
If you own a CMD device, you
NEED the Compression Kit
SSION KIT
system featurin
the commodore
fast
4/128
For
AMERICAN
LUNG
‘The Christmas Seal People*
Please enclose check or money order
for $39.95 to:
Mad Man Software
1400 East Colle
Cheyenne, Wy.
For order Info call.
eneral Info call.
For fax Inquires..........
Be sure to enclose a return address. No P.O.Box
numbers please.
e Drive
2007
Circle Reader Service Number 260
ucates them. That's not a bad return
for such a modest investment.
MARTI PAULIN
Satchel Software
Distributed by Free Spirit Software
720 Sycamore St.
Columbus, IN 47201
(812) 376-9964
$39.95
Circle Reader Service Number 415
FLYER
Flyer is a deceptively simple but mad-
dening little arcade game for the 64.
The idea is to guide a paper airplane
through the rooms of a house, avoiding
furniture and other obstacles.
Helping you in your fight against grav-
ity and wind resistance are a number
of air vents that provide lift and a series
of rollers that give your glider extra
speed and maneuverability. As your
glider passes over a vent, push up on
a joystick to gain altitude. Maintain a
light touch, though. If you climb too
high, you'll smack into the ceiling and
crash.
As your plane glides from left to
right across the screen, aim for the dia-
mond-shaped rollers in the middle of
the room. When you fly through one,
push your stick hard to the right to
pick up speed. Control is rather limited
with this flyer, but you can lose altitude
quickly by pulling back on the stick.
As in any house, furniture is a major
obstacle for paper airplanes. Beds,
lamps, stereos, and bookcases seem
to suck the planes into them. When
you crash, you start again in the first
room which is filled with nothing but air
vents and rollers. Since | crash so fre-
quently, I’m glad that author Cameron
Kaiser lets me keep the action moving.
To restart, simply press the fire button.
The music playing in the back-
ground is a great rendition of “The
Blue Danube.” It puts the 64's SID
chip to good use, but that tune just
about drives me crazy! The volume con-
trol takes care of that, however.
That melodic but cursed back-
ground music is Flyer's only sound ef-
fect, but it’s really not that bad. | just
get annoyed when | can't master a
game.
It took me quite some time to devel-
op just the right touch with Flyer, guid-
ing the plane through the house. Get-
ting through the first room filled with
rollers and vents was a breeze—par-
don the pun—but | thought I'd never
make it past that bed in the next room.
I'd gain a little altitude, pick up some
speed, fly over a vent, pull back to
clear the bed, and then swish! Back to
the beginning.
Flyer’s graphics are pretty simple:
Everything's in black, white, and gray.
The rooms fill only a narrow portion of
the 64’s monitor. Each one is only
about two inches high. That's why you
have to be careful about not flying into
the ceiling. | think a little more creativi-
ty could have been shown here to ex-
pand the playing screen, and the gray
rooms could use a bit of color to give
the game more visual appeal.
The documentation is clear and con-
cise. It consists of a two-sided sheet of
instructions and hints that’s well written
and easy to understand,
All in all, Flyer is a simple game, and
that could be its biggest drawback. If
you're the type who gets discouraged
easily, you'll probably get bored with
Flyer rather quickly. On the other
hand, if you're the type who refuses to
let a computer beat you, you'll proba-
bly get addicted to flying this little elec-
tronic paper airplane.
CHRISTIAN FLEMING
Computer Workshops
3612 Birdie Dr.
La Mesa, CA 91941
$9.95
Circle Reader Service Number 416 o
JULY 1993 COMPUTE G-13
Where to find chips
and whether
excessive poking can
G-14
he hazardous
to their health.
COMPUTE JULY 1993
FEEDBACK
Character ROM Chip
Can you possibly tell me
where | can get the 9011225-
01 chip for my 64? | have
been looking since 1991 but
haven't been able to locate
one in my country.
DAVID SANIEL SUAREZ LOPEZ
VERACRUZ, VER.
MEXICO
The chip you want is the Char-
acter ROM chip, and you can
order it from The Grapevine
Group, 3 Chestnut Street,
Suffern, New York 10901. The
latest price is $9.50 plus
$8.50 shipping costs to Mexi-
co. Ask for part number
C1225. You can order the
chip by mail or by calling
(914) 357-2424. Readers in
the U.S. can order by calling
(800) 292-7445. Ask for the
free catalogue of Commodore
and Amiga chips, too.
Poked to Death?
Question: After about a year
of sustained use, the SID
(Sound Interface Device)
chip in my Commodore 64
has stopped functioning. Can
this be caused by misusing
the chip? For instance, is
there such a thing as exces-
sive poking?
DONALD DRAPER
RICHMOND, VA
The SID chip is designed to
be poked. Such activity is con-
sidered normal use and will
not damage it. In general, noth-
ing any program does will
ever damage any of a com-
puter's internal hardware.
Like all other electronic com-
ponents, SID chips occasion-
ally fail. The only cure is to
replace the chip. Replacing
the chip can be either simple
or difficult, depending on
whether the one in your com-
puter is socketed or soldered.
The SID chip, which has the
numerical designation 6581,
is located near the center
of the circuit board in
both the 64 and 128.
Math Errors
When using my 64 for math
homework, | keep running in-
to some problems. If | raise a
variable containing a negative
number to a fractional expo-
nent, the computer returns an
ILLEGAL QUANTITY ERROR.
It doesn’t happen with con-
stants. For example, if | have
the computer print -8 to the
power of .5, it works fine, But
if | make X equal -8 and then
try to print X to the power of
.5, it doesn’t. Why is this?
TARQ WILLIAMS
LAKE GENEVA, WI
Computers follow a _ rule
called order of operations or
operator precedence, which
tells them which functions or
operations to perform before
others. For example, PRINT 3
+ 2*7 will give you a result of
17, not 35, because multiplica-
tion has a higher precedence
than addition, The result of 2
* 7 is calculated before the 3
is added in.
The up-arrow (power) func-
tion has a higher precedence
than the negation (—) function,
as you'll see if you PRINT -4 T
2. The 64 prints -16 as the an-
swer, But squaring -4 should
result in a positive 16, not aneg-
ative one. What happens is
that the result of 4 to the pow-
er of 2 is calculated; then the
minus sign is appended.
Although PRINT -8 t .5
seems to work, you'll get an er-
ror message if you try PRINT
(-8) T .5. So it's not a matter
of variables versus constants;
it's strictly a problem with rais-
ing a negative number to a
fractional power.
Raising to the .5 power is
the same as finding the
square root of a number. The
square root of —8 would have
to be anumber that multiplied
by itself yielded —8. But when-
ever you square a real num-
ber, the result is positive, so
there's no such thing as a
square root of a negative num-
ber, at least among the real
numbers. Mathematicians use
imaginary numbers to handle
square roots of negative num-
bers, but your 64 isn't built to
handle imaginary numbers.
A Teacher’s Thanks
| would like to thank Gazette
for providing me with a
source of programs that |
have incorporated into an in-
tegrated computer-use pack-
age for the teachers of my
school board. Our education-
al system, like many, is facing
financial cutbacks, with little
or no money available for com-
puters or software. Your pro-
grams filled that need. We
have numerous 64s in our sys-
tem, and now we are able to
make much greater use of
them.
| selected programs from
Gazette that provided word
processing, spreadsheet, da-
tabase, graphics, and key-
boarding skills, Other pro-
grams supplied language
arts, programming sugges-
tions, science, social studies,
and telecommunications re-
sources.
With the current wave of up-
grading, many educators felt
that the 64 had nothing to of-
fer. In fact, it has much to of-
fer if it is utilized to the fullest
possible extent. The comput-
ers are already in the system,
and the Gazette and well-writ-
ten public domain programs of-
fer a viable way to provide for
integrated programming for
our students. Thank you.
CAROL A. NAUSS
CHESTER, NS
CANADA
Send your questions and com-
ments to Gazette Feedback,
COMPUTE Publications, 324
West Wendover Avenue,
Suite 200, Greensboro, North
Carolina 27408. a
3 8 BIT |
PO BOX 542
LINDENHURST NY 11757-0542
WENOWCARRY | MINDSCAPE
Hard Drives & 3.5 inch Drives) POWBRPLAYERS
AT LOWER PRICES THAN JOYSTICK
THE MANUFACTURERS!
1,6 Megabyte 3.5”..... $ 215.00 wow
100 Megabyte HDD. $ 750.00 ONLY
Hardware Items Require
Additional Shipping Fees !
Call Before Ordering!
KEYBOARD SEELS
DON’T LET YOUR
COMPUTER SUFFER
A MELTDOWN
Protects your keyboard
even whik you type |
(C64 or Vic 20.......4#VS64
Comm. 64C. 'VS64C
Comm. 128.........#VS128
Save your Commodore !
ONLY $19.00
$5.00
QUICK GUNNE
Joystick / Flyingstick
4 seperate fire buttons
to assure your comfort!
(Trigger, Thumb, and
both left & right base.)
Hand Contoured Stick
And 4 suction cups on
the bottom of the base.
for complete control !
For serious gamers!
ONLY $ 15.00
COMMERCIAL SOFTWARE CLOSEOUTS
Original Packages ONLY $5.00 cach!
PUFFY’SSAGA, PARADROID,
BLOCKOUT,
DIE HARD
CLUBHOUSE SPORTS
WE ARE ALWAYS ADDING NEW TITLES TO
OUR COMMERCIAL SOFTWARE STOCK !
CALL TO SEE WHAT’S NEW THIS MONTH! |
P.
PD & Shareware Sets
ABIG HIT AT
ONLY $5.00
1; ASST: StarTrek+
3: EDUCATIONAL
H: HACKER PAC
I: PSA CLIPART
J: Telecommunications)
SIX PAC #2 $ 10.00),
ADULT IMAGES
You must be over 18
To receive this 6PAC !
Signature Required !
Call to request a more
descriptive 6 PAC list |)
SHIPPING $2.00 For First Itcm + $1.00 cach additional item
*U.S. Funds Only! “SORRY NOC.O.D.’s OR CREDIT CARD ORDERS
FOR A FREE COPY OF OUR CATALOG, CALL:
(516)-957-1110 MONDAY - FRIDAY 10am to 5 pm EST
Circle Reader Service Number 162
disk!
COMPUTE.
Yes, save time and money! Subscribe to the Gazette
Disk and get all the exciting, fun-filled Gazette pro-
grams for your Commodore 64 or 128—already on
Subscribe today, and month after month you'll
get all the latest, most challenging, and fascinating
programs published in the corresponding issue of
New on the Gazette Disk! In addition to the
programs that appear in the magazine, you'll also
get outstanding bonus programs. These programs,
which are often too large to offer as type-ins, are
available only on disk—they appear nowhere else.
As another Gazette Disk extra, check out
Big Blue Reader 128/64 - 4.1
Transfers word processing, text, ASCII, and binary files between
(64/128 and IBM PC compatible 360K 5.25" and 720K 3.5" disks.
New Version 4.1 features: Transfers ASCII, PET ASCII and Screen
Code files including: WordWriter, PocketWriter, SpeedScript, PaperClip,
WriteStuff, GEOS, EasyScript, Fleet System and most others.
Supports drives # 8-30. New Backup (C128) and Format (1571/1581)
programs. Reads MS-DOS sub-directories, uses joystick, and more.
Includes C128 & C64 programs. Requires 1571 or 1581 Disk Drive,
Big Blue Reader 128/64 - 4.1 only $44.95
Version 4.1 upgrade, send original BBR disk plus $18.
Bible Search 3.2
. The entire Old & New Testament text on 4-1541/71 disks.
. An Exhaustive English Concordance on 2-1541/71 disks.
Indexes every word in the entire Bible; 700,000+ references.
. Incredible five (5) second look-up time, per/word, per/disk.
. Instant, automatic spell checking of more than 12,800 words.
. Wildcard and boolean AND, OR & NOT search options.
. Search the entire Bible in 5 seconds with 1581 or HD (v 3.52).
. Money back guaranteed!
KJV $49.95 | NIV $59.95 | KJV & NIV $90
Includes: C64 & C128 programs; screen, printer and disk output;
users guide, disk case. Available on 7-1541/71, or 4-1581 disks.
= Any questions? Call or write for more information.
Also available! Amiga, Bible Search
Order by check, money order, or COD. US funds only.
= jookrate shipping i . No Credit Card orders.
Canada & Mexico add $4 S/H, Overseas add $10 S/H ($5 BBR)
SOGWAP Software @ (219)724-3900
115 Bellmont Road; Decatur, Indiana 46733
“Gazette Gallery,” where each month we present the
very best in original 64 and 128 artwork.
So don’t waste another moment. Subscribe to-
day to COMPUTE’s Gazette Disk and get 12 issues
for only $49.95. You save almost 60% off the single-
issue price. Clip or photocopy and mail completed
coupon today.
Individual issues of the disk are available for
$9.95 (plus $2.00 shipping and handling) by writing
to COMPUTE, 324 West Wendover Avenue, Suite
200, Greensboro, North Carolina 27408.
YES! Start my one-year subscription
to COMPUTE’s Gazette Disk right away
for only $49.95.*
O Payment enclosed (check or money order)
OCharge OMasterCard O Visa
Exp. Date
Signature
(Required)
Name
Address
City
State/ ZIP/
Province Postal Code
|
|
|
|
|
|
i
|
|
|
| Acct. No.
|
|
|
|
|
!
|
1
|
1
Mail to COMPUTE’s Gazette Disk, P.O. Box 3250, Harlan, IA 51593-2430
* Residents of NC and NY, please add appropriate sales tax for your area. Canadian
orders, add 7% goods and services tax.
Explore the exciting
world of public
domain and shareware
programming
in this new Gazette
G-16
column.
COMPUTE JULY 1993
PD PICKS
Steve Vander Ark
A NEW COLUMN,
VERSION 2
Yep, version 2. This is the sec-
ond time I've written this col-
umn. If you feel as though
you've just walked into the mid-
dle of a movie, let me explain.
This is a new column that
deals with public domain pro-
grams and shareware. | wrote
the first version a few weeks
ago, but when | reread the intro-
duction, | just shook my head.
It was boring.
Oh, it was OK. | might use
it as part of an article some-
where along the line. It defines
shareware and a few other re-
lated terms, chatters about
how nice it is to be writing this
new column, and warns
everyone—in no uncertain
terms—to pay their shareware
fees. It ends with a flourish
about how shareware is on the
cutting edge of Commodore
programming today.
I'm talking bold, new, and ex-
citing programs that push the
limits of Commodore's 8-bit
wonder! I've got to be spitting
a little flame. | don't want you
to read this column once and
then next time decide to save
it until you've read the part
again about how to type in the
programs. | want you to turn to
this column first!
I'll be covering programs
that | hope will provide some
of the old spark that made the
64 so exciting—and made its
owners so gung-ho, so (let's
face it) nuts about their ma-
chines. That spark is what
keeps me coming back to this
great little machine.
I've been rummaging in
some of the stranger corners
of QuantumLink’s libraries,
tracking down programs to
throw at you. Feel free to down-
load them. I’ve provided file-
names and uploader names
for easy downloading. If
you're not on Q-Link and you
can't find these files on local
bulletin boards or at your user
group, you'll find the programs
mentioned here on the Gazette
Disk. Now, let's take a look at
this month’s programs—a cou-
ple of fast and furious, arcade-
style shoot-’em-ups.
Astra
By Chris Batchelor
QuantumLink filename: AS-
TRA3.SDA, uploaded by Chris-
EMM.
OK, for you 128 users out
there, here's an 80-column pro-
gram that will cost you hours
of sleep. The way | see it,
Chris Batchelor, the sadist
who created this arcade tor-
ture, must lie awake nights him-
self, chortling like the Wicked
Witch of the West as he imag-
ines poor joystick jockeys like
me with crippled thumbs and
glazed eyes, trying desperate-
ly to fight off these endless
waves of death. After playing
this fast-paced shoot-’em-up,
| know | need a continuous
fire button on my joystick, an-
ything to save my left hand
from being twisted into a per-
manent claw.
Astra starts innocently
enough. It seems so easy to
pour merciless fire into those
little bugs that swoop into
those little chutes. But then
there are more and more of
them. Before long, bugs are
hurtling down in droves, piling
up like spilled gummy bears.
There just aren’t enough
blasts per second to clear
them all out. Before long,
they get you. And then you
play it again, and again, and
again.
You'll love this game, espe-
cially if you get a rush out of
annihilating all those little
bugs like | do. It works its hor-
rors in 80 columns, which
means that you won't be able
to complain at all about the
graphics. As far as speed
goes, well, just try to keep up
with it. | can’t honestly say
how great it is a higher levels
(I never survive that long).
This is the third incarnation
of this game. The fine-tuning
has made it a real corker. So
flex that thumb a bit, slam
back Mountain Dews until
your eyes bug out, and face
the endless hordes in Astra.
Odin
By Frank Lindsey
QuantumLink filename: ODIN,
uploaded by Mondain.
OK, all of you 64 users
who've been reading this and
growling nasty things about
those 128 users and their fan-
cy graphics, here's a game
that will make a red-eyed,
thumb-happy zombie out of
you, too.
Odin is one of those
games that put you in a space-
ship at the bottom of the
screen, armed with an end-
less supply of energy bolts or
whatever. As usual, the de-
tails are unimportant. What is
important is that all those
crazed blobs plummeting to-
ward you will turn your space-
ship into pixel dust if you
don't keep pounding that fire
button. There's no continual
fire here (the one major flaw
in an otherwise outstanding
game), so plan on some actu-
al finger or thumb pain as you
try to clear a path in the weav-
ing mess.
Odin does Astra one better
by hurling a nifty variety of
nasties down the screen.
They're all animated with blink-
ing lights and flapping wings,
making them nice to look at
for that split second before
you obliterate them or vice ver-
sa. Once you get past the
first level, they fire back, lob-
bing little bombs your way.
Once again, | have to ad-
mit that | can’t vouch for the
higher levels. | count myself
lucky to live past level 2.
Launch yourself into either
of these games. Have fun
and let me know how you
make out! a]
=
RAMLInk
RAMLink with O MB RAMCard
RAMLink with 1 MB RAMCard
RAMLink with 4 MB RAMCard
Real-Time-Clock for RAMCard (Optional)
RAMLink Battery Back-up (Optional)
1.MB & 4 MB SIMM Modules
Parallel Cable (RAMLink to HD)
RAMDrive
RAMDrive 1 MB
RAMDrive 2 MB
HD-Serles Hard Disk Drives
HD-40, 40 MB SCSI Hard Drive
HD-85, 85 MB SCSI Hard Drive
HD-100, 100 MB SCSI Hard Drive
HD-200, 200 MB SCSI Hard Drive
FD-Serles 3.5", Floppy Disk Drives
FD-2000 (800K and 1.6 MB Formats)
FD-4000 (800K, 1.6 MB and 3.2 MB Formats)
FD Real-Time-Clock Option
Box of 10, High Density Disks (1.6MB)
Box of 10, Enhanced Density Disks (3.2 M8)
Single ED-Disk. (3.2 MB)
$179.95
$249.95
$20.00
$14.95
$60.00
$8.00
JiffyDOS (Specity Computer / drive model & serial number)
C84-System (Computer & drive)
‘SX-64 System (Computer & Internal 1541)
C-128 System (Computer & drive)
128-D System (Computer & Internal 1571)
Additional Drive ROMs
Software Products
$49.95
$49.95
$59.95
$59.95
$24.95
e0MakeBoot (Makes bootable copies of GEOS 64/128) $12.95
GateWay/64 or 128 (GEOS Desktop Replacamend $29.95
geoCanvas (Atemafve GEOS Pant Program)
Collatte Utilties (Handy GEOS Utlites)
Perfact Print LO for GEOS (Font Col.182, 49 Fonts)
Font Collaction 3 (17 Fonts and 5 Borders)
Border Font Collection 1 (24 Border Fonts)
JitfyMON - ML Monitor for JittyDOS'64
Miscellaneous CMD Products
‘SwittLink, RS-232 Interface (300 to 38,400 baud)
‘SwiftLink Cable (089 to DB25)
SID Symphony Stereo Cartridge w/ Player
NI prices and specifications subject to change without notice
$29.95
$19.95
$49.95
$19.95
$19.95
$19.95
$39.95
$9.95
$39.95
COMPUTE’s
SpeedScript Disk
A powerful word processing Yes!
package for Commodore 64 Send me —______ copies of COMPUTE’s
and 128 owners
A Great Deal for Commodore | airmail.)
Users!
* SpeedScript for the 64
High Performance SCS! Hard Drive for the C64 & C128
HD Series Hard Drives are available in capacities up to 200 MB, are fully partitionable, and
can emulate 1541, 1571, & 1581 disks while Native partitions utilize MSDOS-style
subdirectories. HD's connect easily to the serial bus or parallel via RAMLink. Includes buit-
in JiffyYDOS, SWAP feature and Real-Time-Clock HD Series Drives offer superior
compatibility with most commercial software including BBS, Productivity and GEOS. And
with new pricing, HD Series drives offer the lowest cost/MB of any C64/128 storage devica.
Power Backed Expandable RAM Disk and Interface
The fastest possible form of storage, RAMLink provides instant access to files and retains
data while your computeris tumed off. Easy touse and expandable upto 16 MB, RAMLink
uilizes the same powerful operating system found in the HD. RAMLink also offers built-
in JiffyDOS, SWAP feature, reset button, enable/disable switch, pass-thru port and RAM
port for REU/GEORAM use. Ideal for those requiring maximum speed, expandability and
connpa with all w/pes of softwere and hardware including GEOS,
REINS ER TREO
High Capacity 1.6 and 32 MB 3.5" Floppy Disk Drives
The FD-2000 and FD-4000 disk drives utilize today’s latest3.5 inch tachnology. FD-2000's
support 800K (1581 style) and 1.6 MB (High Density) formats, while the FD-4000's offer
support for the 3.2 MB (Enhanced Density) format as well. Fast and reliable, they support
1541, 1571 and 1581 style partitions, Native Mode partitioning and can actually read and
write 1581 disks. FD drives feature built-in JiffyDOS, SWAP button and optional RTC. High
speed and compatibility make the FD the right drive for every applicati
liffyDOS Speeds up disk access by as much as 1500% while
maintaining 100% compatibility with commercial software
+ Speeds up Loading, Saveing, Verifying, Formatting and Reading / Writing of PRG, SEO, USR and REL fles
+ BulltinDOS Wedge plus 17additonal features including fla copier, text dump, printer toggle, and rade finable function keys
+ ROM See ieee eee a oO and dk drives. Supports C-64, 640, SX-64, C-128, 128-D, 1541,
and Handi
Mae pone came pny Creative Micro Designs, Inc.
RAMLink, RAMDrive, FD: UPS $9.00;2nd-day $16.00,,AK HI,Canada $20.00 P.O. Box 646, E. Longmeadow, MA 01028
GW, PPLO, JOOS, SiD, SL: UPS $550,2 day $10.00:AKH|Canada $15.00 “
GBoot Col UM, GCan:{8t Ciass Mal $200; Canada $5.00 Orders: (800) 638-3263
(Mi Foreign Orders: Cail Info:
Payment: MC, Visa, Money Order or Bank Check COD shipments add $5.00 Bi BBS:
CODE may require advanced deport. Partonal checks are hald for 3 whs.
| SpeedScript Disk.
I've enclosed $11.95 plus $2.00 postage and handling. (Outside
U.S. and Canada add $1.00 for surface mail or $3.00 for
Amount
| ORDER NOW!
* SpeedScript 128—80-column version
* Spelling checkers
* Mail merge
* Date-and-time stamp
* 80-column preview for the 64
* Turbo save and load
State
Mail personal check or money order to
Commodore SpeedScript Disk
324 W. Wendover Ave., Ste. 200
Greensboro, NC 27408
* Plus more than a dozen other SpeedScript | Residents of North Carolina and New York, add appropriate tax for your area. Canadian
shies . . ; orders. add 7" good services tax
support utilities all on one disk (including as a ai eae
full documentation)
Please allow 4-6 weeks for delivery. Program available only on 5%-inch disks.
le Reader Service Number 139
In order to read a file
successfully, you
have to Know what's
at its end.
G-18
COMPUTE JULY 1993
MACHINE LANGUAGE
Jim Butterfield
FILE END CHECK
BASIC’s INPUT# statement
has limitations that can cause
a program crash during a file
read. The problem surfaces
when two conditions are met.
First, the program wants to
read the whole file, using IN-
PUT# to get the data and test
the system variable ST (status)
to detect the end of the file.
The second condition occurs
when the file ends with more
than one Return character.
A quick pair of programs
will show this effect. First,
write a file as follows.
100 OPEN 1,8,2,0:BADFILE,S,W”
110 PRINT#1, “JINGLE”
120 PRINT#1,“JANGLE”
130 PRINT#1
140 CLOSE 1
Line 130 creates the prob-
lem by writing a blank line at
the end of the file. In other
words, there will be more
than one Return character at
the end. Now for the doomed
reading program.
100 OPEN 1,8,2,‘‘0:BADFILE”
110 INPUT#1,A$
120 PRINT A$
130 IF ST=0 GOTO 110
140 CLOSE 1
The program will read “reg-
ular” files without trouble. But
on our bad file, the program
will read JINGLE and JAN-
GLE and then lock up.
Why does this happen? It's
a conflict of two system rules.
Rule 1: The INPUT# com-
mand always reads to the
next Return character. If it
finds a blank line, it immediate-
ly goes back for another
read. Rule 2: If the file han-
dler is asked to deliver data
beyond the end of the file, it
will supply a Return charac-
ter. Combine these rules, and
you'll see that if the last line of
a file is blank, the INPUT#
statement will continue to
read blank lines—and it'll do
so forever!
Our first project is to write a
program that will scan a file
quickly and find out what's at
the end—a single Return, the
normal condition; no Return,
unusual but not fatal; or more
than one Return, possibly a
crash. So our program de-
tects the danger. Another
time, we'll add to the program
so that it will fix the problem.
The BASIC part of our pro-
gram will ask for the name of
the data file and open it as log-
ical file number 1. Then it
calls the following machine lan-
guage program at address
8704, hexadecimal 2200.
First, connect the input
stream to logical file 1.
2200 LDX #$01
JSR S$FFC6
Our plan is to store the last
character of the file at ad-
dress $2101 and the previous
character in $2100. As a pre-
caution, we'll prepare to store
0 in this last address.
LDA #$00
As we go around our loop,
the A register will contain the
last character received from
the file. Store this, and read an-
other character.
2207 STA $2100
To read a character from a
file, we may use a subroutine
call to either $FFCF (INPUT)
or $FFE4 (GET). The result is
the same either way.
JSR SFFE4
The received character is in
A. We may test for end-of-file
by looking at our system stat-
us variable ST. That variable
is located at hex address 90.
In Commodore machines pri-
or to the VIC-20, it's located
at address $96.
LDY $90
If ST has a value of 0, the file
read is proceeding normally,
and we have not reached the
file's end. In this instance,
BEQ takes us back around
the loop.
BEQ $2207
If we didn't take the BEQ
branch, we may assume that
we're at the end of the file.
The final character, still in the
A register, is stored at $2101.
STA $2101
The last instruction in our pro-
gram jumps to $FFCC,
CLRCHN, which restores the
input stream to its default
path (screen/keyboard).
JMP $FFCC
It's a small program, a fast pro-
gram—and it will leave the
last two bytes of the file in
addresses $2100 and $2101
and 8448 and 8449 respective-
ly. BASIC should now close
the file and test these bytes.
Here's the program in the for-
mat of a BASIC loader.
CJ 108 PRINT"FILE END CHECKER
{SPACE)- JIM BUTTERFIEL
D™
XR 110 DATA 162,1,32,198,255,1
69,G,141,6,33,32,228,25
5
GS 120 DATA 164,144,246,246,14
1,1,33,76,204,255
PC 164 DATA 72,32,204,255,162,
2,32,201,255,174,9,33
JF 209 FOR J=8784 TO 8726
EJ 210 READ X:T=T+X
BP 220 POKE J,X
AE 236 NEXT J
XS 248 IF T<>3G16 THEN STOP
XF 300 INPUT "NAME OF FILE"; FS
JQ 310 OPEN 15,8,15
FJ 320 OPEN 1,8,2,FS
GB 330 INPUT#15,E,ES:IF E00 T
HEN PRINT E$:STOP
QH 346 SYS 8704
SB 350 CLOSE 1
SD 366 CLOSE 15
GC 370 IF PEEK(8449)<>13 THEN
{SPACE}PRINT"FILE DOES
{SPACE}NOT END WITH <RE
TURN>.": END
SE 380 IF PEEK(8448)<>13 THEN
{SPACE} PRINT"FILE ENDS
{SPACE}WITH A SINGLE <R
ETURN>.": END
XS 399 PRINT"FILE ENDS WITH MU
LTIPLE <RETURN> CHARS."
The Gazette
Productivity |
Manager 5,
Harness the productivity
power of your 64 or 128!
Turn your Commodore into
a powerful workhorse, keep track
of finances, generate reports
in a snap, manage your
money in minutes—
all with the
Gazette Productivity
Manager! Look at all
your 64/128 Productivity
Manager disk contains.
GemCalc 64 & 128—
A complete, powerful, user-
friendly spreadsheet with all
the features you’d expect
in an expensive commercial package
(separate 64 and 128 versions are included).
Most commands can be performed with a single keypress!
YOUR GAZETTE
PRODUCTIVITY
MANAGER
TODAY!
Memo Card—Unleashes the power of a full-blown
database without the fuss! Nothing’s easier—it’s a
truly simple computerized address file. Just type in
your data on any one of the index cards. Need to edit?
Just use the standard Commodore editing keys. (MasterCard and Visa accepted on orders with subtotal over $20).
Finished? Just save the data to floppy. What could be [| © ©©)©)©0©)0 TTS
easier? oO YES! Please send me __ Productivity Manager disk(s)
($14.95 each).
Subtotal
—__— Sales Tax (Residents of NC and NY please add appro-
priate sales tax for your area. Canadian orders, add
7% goods and services tax.)
——— Shipping and Handling ($2.00 U.S. and Canada, $3.00
surface mail, $5.00 airmail per disk.)
|
I
|
Financial Planner—Answers all of those questions !
concerning interest, investments, and money manage- '
ment that financial analysts charge big bucks for! You 1
can plan for your children’s education and know |
exactly how much it will cost and how much you need t
to save every month to reach your goal. Or, decide I Total Enclosed
whether to buy or lease a new car. Use the compound | —Check or'Money Order _ MasterCard — VISA
interest and savings function to arrive at accurate 1 eee
|
|
I
I
I
|
|
|
!
|
|
(Required)
estimates of how your money will work for you. ee
Compute the answer at the click of a key!
Daytime Telephone No.
Name
Address
City
State/ up/
Province Postal Code
DON’T MISS OUT ON THIS
POWERFUL WORKHORSE!
Send your order to Gazette Productivity Manager,
324 W. Wendover Ave., Ste. 200, Greensboro, NC 27408.
G-20
Use these
readers’ tips to
read your
64’s memory,
remove REM
statements, and
more.
COMPUTE JULY 1993
PROGRAMMER’S PAGE
Randy Thompson
SNOOPERS AND
REMOVERS
Readers have come through
again with some great tips.
Let's get right to them.
Memory Snooper
Here's a simple BASIC pro-
gram that searches an area
of memory for text messages.
SD 1@ S=41118:E=41865
PF 20 FOR I=S TO E
HS 30 C=PEEK(I):IF C>3l AND C<
123 THEN PRINT CHRS(C);
GET K$:IF KS=CHRS$(13) TH
EN PRINT
IP KS<>"<" THEN NEXT I
EX 40
MP 50
As listed, this program scans
the area of ROM that contains
BASIC keywords and error
messages. You might try
searching the area of memo-
ry that contains BASIC pro-
grams: 2049-40959. To do
this, in line 10 make S equal
to 2049 and E equal to
40959. | find this program use-
ful in searching for and read-
ing E-mail that | have neglect-
ed to read completely before
logging off QuantumLink.
You can make the text eas-
ier to read as it prints to the
screen by pressing Return.
This forces the program to
print a carriage return. To
stop the program before it fin-
ishes searching memory,
press the back arrow key.
BRIAN KISSINGER
EVANSVILLE, IN
Function Keys 128
When programming in BASIC
on the 128, the GET state-
ment doesn't return the Com-
modore 64 character codes
for function keys (133-140) un-
less you execute a POKE
828,183 first, thus disabling
the keys’ preprogrammed def-
initions. (POKE 828,173 re-
turns the 128's function keys
to normal.)
Rather than disabling the
128's function key definitions,
you can use them to simulate
a string of keypresses that
your program recognizes. For
example, | recently wrote a
game that lets me press G at
any time to access a game-
control menu. From that
menu, | can press L to load a
game or S to save a game, af-
ter which the program dis-
plays the prompt Are you
sure (Y/N)? before continuing.
To simplify the selection of
the game-save option, | pro-
grammed the f1 key to simu-
late pressing the G, S, and Y
keys with this command:
KEY1,“GSY”
Now when | press the f1
key while the game is run-
ning, the character codes for
the G, S, and Y keys are put
into the keyboard buffer and
read by the game's GET state-
ment. This calls up the game-
control menu, selects the
save-game option, and an-
swers Y in response to the
Are you sure (Y/N)? prompt.
This gives me three keypress-
es in one!
RICHARD R. HARVEL
FORT WORTH, TX
REMover
The following program re-
moves all REM statements
from 64 BASIC programs. To
use this handy utility, load
and run the program shown
below. Then load the BASIC
program containing the un-
wanted REM statements, and
type SYS 49152.
SH 108
AJ 118
REMOVER
FOR I=49152 TO 49392:RE
AD D:POKE I,D:C=C+D:NEX
71
IE C¢>33534 THEN PRINT
{SPACE}"ERROR IN DATA S
TATEMENTS"
DATA 24,165,43,105,2,13
3,253,165,44,105,0,133
DATA 254,32,204,192,176
,6G,24,165,253,195,2
DATA 133,253,165, 254/19
5,G,133,254,166,0,148,2
40,192,177,253
DATA 248,8,201,143,248,
37,200,76,33,192
DATA 152,24,105,3,32,21
9,192,32,204,192,176,18
DATA 24,165,253,185,2,1
33,253,165,254,165,6,13
3
JF 120
CA 138
ap 146
MK 150
XK 166
PX 176
Gs 186
GD 196 DATA 254,166,8,76,33,19
2,76,51,165,192,6,240
DATA 1,136,152,32,219,1
92,166,0,177,253,240,4
DATA 268,76,92,192,152,
141,239,192,173,248,192
7261
DATA @,268,22,24,173,23
9,192,105,5,141,239,192
DATA 56,165,253,233,5,1
33,253,165,254,233,0
DATA 133,254,24,165,253
772,169,239,192,133,251
PP 200
KK 210
BK 220
GB 230
PX 240
165,254
DATA 72,105,0,133,252,1
60,8,177, 251,145, 253,32
DATA 191,192,32,204,192
176 ,3,76,151,192,104
DATA 133,254,104,133,25
3,56,165,45, 237,239,192
133,45,165,46
DATA 233,0,133,46,160,0
176, 48,192,230
DATA 251,208, 2,230,252,
230,253,208,2,230,254,9
6
GH 256
PA 268
AH 276
GR 280
BB 290
MQ 300 DATA 24,165,254,197,46,
208,7,165,253,197,45
DATA 208,1,56,96,141,23
9,192,24,165,253,109,23
9,192
DATA 133,253,165,254,10
5,0,133,254,096,9,9,0,0
pe 310
GF 320
Besides making a program
smaller, removing REM state-
ments can make a program
run faster because the comput-
er no longer has to skip over
those descriptive but nonfunc-
tional lines of code.
At first glance, line 100
may appear to be missing a
REM statement before the pro-
gram’s name. Of course,
when the program runs, BA-
SIC will interpret the first
three letters of the word as
REM and pass on to the next
line. This means you can test
the program on itself.
Be careful not to run this util-
ity on programs that have
GOTO or GOSUB commands
that jump to lines that begin
with a remark. Those lines
will also be deleted.
VINCE TAGLE
GRANADA HILLS, CA
“Programmer's Page” is inter-
ested in your programming
tips and tricks. Send all sub-
missions to Programmer's
Page, COMPUTE's Gazette,
324 West Wendover Avenue,
Suite 200, Greensboro, North
Carolina 27408. We pay $25-
$50 for each tip we use. O
Gazette
Index
Everything’s included!
Features, games, reviews,
education/home applications,
programming, bugswatter,
feedback, and columns!
A superb interface includes pull-
down menus, help screens, and
keyboard, joystick, or mouse con-
trol. Features include super-fast
searching and sorting capabilities.
An options screen allows you to
choose text colors, drive number,
and input device. And there’s full
documentation on disk.
Choose from three modes of opera-
tion—browse for quick scanning,
view for detailed information and
descriptions, and edit for adding
items from upcoming issues—and
print to any printer. There’s even a
turbo-load option for maximum
disk-access speed.
ORDER YOUR
GAZETTE INDEX
TODAY!
(MasterCard and Visa accepted on
orders with subtotal over $20.)
To order, send $7.95 per disk, the
quantity of disks ordered, check
or money order,* your name and
complete street address:
Gazette Index
324 West Wendover Avenue
Suite 200
Greensboro, NC 27408
*Please add $2 shipping & handling ($5 foreign) for
each disk (residents of NC, NJ, NY please add appli-
cable sales tax; Canadian orders, add 7% goods
and services tax).
All payments must be in U.S. funds. Please allow 4
weeks for delivery.
KeyDOS ROM Version 2 is here!
The KeyDOS ROM is a chip for the empty socket inside your C128 that adds more than 40
powerful features. KeyDOS is-available instantly as soon as you switch on your 128!
KeyDOS is loaded with useful tools to simplify file access on multiple drive systems without typ-
ing file names—all major DOS functions included. Select multiple files for copying, viewing,
printing, renaming or scratching. ASCII/CBM/Screen code converter. Full support for 1581
subdirectories. Built-in RAMDOS for REUs up to 2MB. New GEOS SupeRBoot.
Alarm clock. Disk editor. Powerful debugger.
Only $32.50. Satisfaction Guaranteed! Write for more information.
Enhance your system with the speed and convenience that KeyDOS provides!
Antigrav Toolkit, PO Box 1074, Cambridge, MA 02142
Shipping outside of US, Canada and Mexico add $3
Circle Reader Service Number 244
NEW GEOS SOFTWARE scene
GeoSoli
THE LANDMARK SERIES Cheeke
Dual Top - The PREMIER Desk Top replacement, Provides full four drive support, RAM drive
priority system, one click access to major file functions, comprehensive error reports, full set of
keyboard shortcuts, multiple user options plus many more features. 40 and 80 col modes.
Lace Il - Display GeoPaint, IPaint, and Basic8 pictures. Full color. 128 - 80 column mode only.
GeoTet - Relax and enjoy a game of logic and skill. Full color 40 and 80 column modes,
GeoSolitaire - Try your hand at America’s favorite card game. Full color, 40 and 80 columns.
To order the Land:
Send a check or money order for $24.9: 13.00 S/H to:
C/O The Landmark Series, 2253 N Kansas Aye, Sprin
Circle Reader Service Number 135
REU users: Battery Back any 17xx or GEORAM, with the BBU. Use with GEOS (V1.3 up),
RAMDOS or other programs that use REUs. Great for BBS. No heavy power supply needed.
GEOS users: BBGRam, Battery backed RAM for GEOS 2.0. A fast, reliable altemative to
mechanical drives. Supports all drive types, multiple partitions and alternate DESKTOPs.
PERFORMANCE PERIPHERALS, Inc.
5 Upper Loudon Road, Loudonville, NY 12211.
US orders, literature: 800-925-9774. Tech support, orders, FAX: 518-436-0485.
BBU $59, BBGRam 512K $89, BBGRam 1M$119, BBGRam 2M $159.
US S&H $6. US COD $4. Canada & Mexico S&H $10. Other countries S&H $19.
‘30 day money back guarantee. 90 day warrantee. Master Card / VISA welcome,
Circle Reader Service Number 153
sy. 4 ~ ‘the MOST POWER Tor the BUCK”
L Peainnt ceerteeziteseren seis te
' Reh 1991
= | 1 Paint lets you create on a 640 by 400 pixel screen-- that's
T= Interlace! AS SouBLE we soe ned by any other graphics software!
| 1 Paint’s Interlace screen offers the unique ability to blend colors for
I= Incredible! 65,536 APPARENT COLORS!
ital af
Import GIF, MAC, GEOS, Basic8, Doodles © PrantSbop! I Port. mt $19.95 LN
Elly dene custoon SAVE! both $49.95)| “saris
Easily define custom GIF palette templates!
Check or money order only. MN residents add 6-1/2% sales tax Allow 2- 4 waoks for delivary
Circle Reader Service Number 146
Fast Action Arcade Style Game
1 ae for the Commodore 64/128+1541
24. 95 plus $3 Shipping and
e Handling in the U.S.A.
S/H in Canada $5 and $10 for all others.
— American Currency Only —
Send Check
=o Werestorm Software.
Box 1086, Sidney, MT 59270
Order to:
Circle Reader Service Number 289
G-21
G-22
Here’s how to
activate your 64's
user port at
any time of day.
COMPUTE JULY 1993
BEGINNER BASIC
Larry Cotton
USER PORT CLOCK
(PART 2)
The 64 is blessed with four
ports to connect with the out-
side world. Two of them are
quite well known: joystick
ports 1 and 2, which are locat-
ed on the right side of the com-
puter next to the power
switch. As we learned some
time back, those ports can be
used for output as well as for
normal joystick input.
The other two ports may not
be quite as familiar to you. Fac-
ing the computer as you nor-
USER PORTS LOOKING AT REAR OF COMPUTER
(GROUNDS AT PINS 1, 12, A, N)
so have a basic knowledge of
digital electronics or know
someone who does.
Please remember two
things: that all ports are con-
nected to the innards of your
computer and that their out-
puts are rather feeble and sen-
sitive to abuse. Avoid static
electric charges like the
plague, and always connect
ports to low-voltage circuits by
means of properly matched op-
to-isolators, transistors, and/
or relays.
The figure below shows the
user port as you face the rear
of the computer. The pins
mally do, the port at the ex-
treme right rear is the car-
tridge port. It normally accepts
game and other types of car-
tridges, such as the common
fastload cartridge. The port on
the extreme left rear is the us-
er port, to which | referred last
month. When you want to
make a connection to the out-
side world, that's the one to
think of first. This port is easy
to program in BASIC. I'll show
you how to turn on and off
each of its pins.
In fact, the programming is
easier than wiring the hard-
ware. As | warned you last
month, | won't go into a lot of
detail about user-port connec-
tions. If you decide on a pro-
ject, you'll need a card-edge
connector with .156-inch termi-
nal-to-terminal spacings, avail-
able at Radio Shack or Mous-
er Electronics. You should al-
which we can control easily
are those on the bottom row let-
tered C through L (skipping G
and |).
Here's a very simple pro-
gram that looks at the key-
board to see if C, D, E, or Fis
pressed.
10 P=56577: REM USER PORT
20 POKEP+2,255: REM ALL PINS
OUTPUT
30 POKEP,O: REM ALL PINS OFF
40 GETAS: IFAS="""THEN40
50 IFAS="‘C” THEN POKEP,1
60 IFAS="D" THEN POKEP,2
70 IFAS="E" THEN POKEP,4
80 IFAS=""F” THEN POKEP,8
90 GOTO40
Line 20 sets up the user
port so that all subsequent
POKEs are interpreted as out-
puts, line 30 turns all pins off,
and line 40 waits for a key to
be pressed.
When you run this, press-
ing C, for instance, turns pin
Con. (In the jargon of electron-
ics, the voltage on pin C
goes high or jumps from 0 to
+5 volts DC.) This voltage is
enough to power a Light Emit-
ting Diode (LED) or trigger a
sensitive transistor or relay,
which must be connected be-
tween the controlled pin and
a ground (pin 1, 12, A, or N).
Now let's. finish last
month's program. Add lines
10-30 from the above pro-
gram, change line 420, and
add lines 430-470.
420 PRINT'*[CLR][DOWNJUSER
PORT PIN C ON.
430 PRINT[DOWN]PRESS ANY
KEY TO TURN OFF.
440 POKEP,1
450 GETA$:IFA$=""THEN450
460 POKEP,O
470 PRINT [DOWNJUSER PORT
PIN C OFF.
Now when you run the pro-
gram, enter the times as you
did last month. When the
“alarm” goes off, pin C in the
user port is turned on. Poking
other values to P in line 440 ac-
tivates other pins as follows.
Poking Turns On
1 Cc
2 D
4 E
8 F
16 H
32 J
64 K
128 L
Combinations of pins can
be activated by adding the val-
ues in the left column corre-
sponding to the pins you
want to turn on. For instance,
to turn on pins C and H, poke
17 (1 + 16) to P (56577). To
turn on pins J, K, and L, poke
224,
I've just about run out of
space for this month, but I'll
mention some of the pro-
gram's highlights.
The subroutine in lines 290-
410 gathers user input in
hours, minutes, and seconds
to set the clock and the
alarm, Line 90 pokes values
based on this user-supplied
information to three clock regis-
ters 56329-56331. Line 130
forms a variable B which is
calculated from these values.
B is the number of seconds
from midnight to when the
clock's alarm is set—when
the user port is to be activat-
ed. For example, B would
have a value of 25,200 for
7:00 a.m. Line 160 starts the
clock by poking a 0 to the
tenths-of-seconds register
56328
The clock is updated and
printed to the screen in a
loop in lines 170-280. The
same registers we poked are
continually peeked in line
470, from which printable val-
ues are derived in lines 180-
220. A in line 230 is the actu-
al time of day in seconds
from midnight. Line 240 con-
tinually compares A to B.
When they're equal, the alarm
goes off; control zips to line
420 which turns on pin C in
the user port. Here's the en-
tire listing in case you missed
last month's column, Remem-
ber, always set the user port
to activate within 24 hours of
starting the clock.
BM 16 P=56577:REM USER P
ORT
POKEP+2,255:REM AL
L PINS OUTPUT
POKEP,@:REM ALL PI
NS LOW
PRINTCHRS (147) : POK
£53281,14:POKE646,
6
PRINT"SET CLOCK AT
: {DOWN}"
R=8 : GOSUB29:K=432
@G:REM 43260 SECON
DS IN 12 HOURS
IFIS$="PM"THENX=K
FORI=1T03:H=INT (T (
1) /16) :L=T (I) -10*H
3:7 (1) =16*H+L:NEXT
C=56331:POKEC,T (1)
:POKEC-1,T (2) : POKE
c-2,T(3)
166 PRINT" {DOWN}ACTIV
BF 20
cc 36
Ds 46
KR 56
PK 60
GX
ER
76
8a
MC 9G
FA
XG
XM
GJ
HD
FD
HA
SG
BJ
XX
MD
HG
DE
KE
RA
HP
PG
CE
GG
pc
116
126
136
146
156
163
176
186
198
268
216
226
236
240
256
266
276
286
296
308
316
328
336
346
356
368
ATE USER PORT AT:
{DOWN}"
R=18:GOSUB299
IFIS="PM"THENY=K
B=Y+T (1) *3600+T (2
)*60+T (3)
PRINT" {DOWN} PRESS
ANY KEY TO START
CLOCK. {DOWN}
GETAS: IFAS=""THEN
156
POKEC-3,0
H=PEEK (C) :M=PEEK (
C-1) :S=PEEK(C-2):
T=PEEK (C-3)
C1$=CHRS ( (16ANDH)
/16+48) +CHRS ((15A
NDH) +48)
H=VAL (C1$) *3600
IFC1$="@9"THENC1S
="q2"
C2$=CHRS ( (24GANDM
) /16+48) +CHRS ((15
ANDM) +48) :M=VAL(C
2$)*66
C3$=CHRS ( (24GANDS
) /16+48) +CHRS ((15
ANDS) +48) :S=VAL(C
3$)
A=X+H+M+S:IFA=2*K
THENPOKEC, @: POKEC
-3,0:X=6
IFA=BTHEN4 26
IPACKTHENJS="AM":
GOT027¢
J$="PM"
PRINT" {WHT}TIME I
H$=""; INPUT"HOURS
“SHS: IFHS<"G"ORHS
>"9""THENPRINT"
{2 uP}":GOTO296
T (1) =VAL (H$) : IFT (
1) <@ORT (1)>12THEN
PRINT" {2 UP}":GOT
0296
IFT (1)=12THENT (1
=6
MS="": INPUT"
{DOWN }MINUTES" ; MS
: IFM$<"G"ORMS>"9"
THENPRINT"{3 UP}"
:GOTO32G
T (2) =VAL (M$) : IFT (
2) <@ORT (2) >59THEN
PRINT" {3 UP}":GOT
032
s$=""; INPUT"
{DOWN}SECONDS"; SS
: IFS$<"G"ORSS>"9"
THENPRINT"{3 UP}"
:GOTO34G
T (3) =VAL (S$) :1FT(
3) <GORT (3) >S9THEN
PRINT"{3 UP}":GOT
0346
PRINT" {DOWN}AM OR
PM (PRESS A OR P
"
GETIS:IFIS<>"A"TH
ENIFIS$<>"P"THEN37
8
IFIS="A"THENIS="A
M";GOTO406
1$="PM"
POKE214,R: PRINT: P
OKE211,24:PRINTIS
RETURN
PRINT" {CLR} {DOWN}
USER PORT PIN C O
Ny"
PRINT" {DOWN} PRESS
ANY KEY TO TURN
{SPACE}OFE.
POKEP,1:REM TURNS
ON PIN C
GETAS$: IFAS=""THEN
450
POKEP,@
PRINT" {DOWN}USER
{SPACE}PORT PIN C
OFF." o
HD
4
ATTENTION
WRITERS,
PROGRAMMERS
Gazette is looking for utili-
ties, applications, games,
educational programs, and
tutorial articles. If you've cre-
ated a program that you
think other readers might en-
joy or find useful, send it
and the documentation on
disk to
Gazette Submissions
Reviewer
COMPUTE Publications
324 W. Wendover,
Ste. 200
Greensboro, NC 27408
Please enclose an SASE if
you want your materials re-
turned.
Send New Product
Announcements
and/or Press Releases
on your
Commodore 64/128
products to:
Tom Netsel c/o
COMPUTE
JULY 1993 COMPUTE
G-23
A 64 can be an ideal
first computer
for toddlers—as well
24
as a great
teaching tool.
COMPUTE JULY 1993
D'IVERSIONS
=a Se a
Fred D'lgnazio
TODDLER’S CHOICE
For a recent Public Broadcast-
ing Service show, “Learning
Matters,” we videotaped my
segment, Technology Corner,
in my family's study. We re-
viewed the newest multimedia
CD-ROM titles for toddlers, in-
cluding Just Grandma and Me
(Broderbund); Mother Goose
(Sierra On-Line); Silly, Noisy
House (Voyager); and Millie's
Math House (Edmark). Our re-
viewers were my three-year-
old daughter Laura and her
one-year-old buddy Alex.
At the end of the segment,
the show's producer, John Mer-
row, noted that the equipment
and software we used was
“expensive and possibly out
of reach” for many families. He
wanted to know if there was an-
other toddler we could inter-
view who had a more down-to-
earth computer setup.
| thought of Tommy Kurek,
Laura's next-door neighbor,
and we called Tommy's par-
ents and scheduled a visit.
Tommy's computer, _ it
turned out, was a perfect tod-
dler configuration: a second-
hand Commodore 64. Most of
the software titles and extra
equipment were purchased at
yard sales or flea markets. The
price of Tommy's entire setup
was well under $400—the
price of a single CD-ROM
drive.
The computer station was
on a small table in the corner
of the family living room sur-
rounded by books, Tommy's
toys, and two or three loung-
ing cats. When the family did
their computing, Tommy sat in
his chair, and his mom and
dad sat on each side of him
on the floor. This made them
all about the same size.
To begin the interview, we
asked Tommy's daddy, Keith,
if Tommy had suffered from
not having the latest multime-
dia computer equipment.
“| don't think so,” said
Keith. “Tommy just turned
three. While he was still two, us-
ing the Commodore 64, he
learned how to write his own
name, his friend Laura’s
name, my name, his mommy's
name (Leanne), and the
names of all four family cats.
“Also, while he was two,
Tommy used the computer to
learn how to count to 39,
count objects on the comput-
er screen and press the cor-
rect number on the keyboard,
and recognize and find every
number from 0 to 9 and every
letter in the alphabet.”
“Do you have any advice
for fellow parents who have tod-
dlers?” we asked Keith.
“Tell them to find or buy a
Commodore 64,” said Keith.
“If the parents buy an expen-
sive computer, they'll be so wor-
ried about its safety they'll nev-
er be relaxed around it with
their two-year-old, and they'll
be afraid to turn their child
loose on the computer. The
great thing about this comput-
er is it's 100 percent Tommy's
computer. He can do anything
he wants, and the Commo-
dore can take it.
“The other good thing
about the 64,” Keith contin-
ued, “is that lots of Tommy's ed-
ucational programs come on
Cartridges. When we go visit
Grandma on weekends, we
just throw the computer into
the car along with a couple of
Tommy's favorite cartridges.
At Grandma's we plug into her
television set, and Tommy is
busy for hours working on his
number, shape, and letter
games. When it comes time to
go home, it takes about ten sec-
onds to unplug the computer
and toss it back into the car.”
We asked Tommy to pick
out his favorite 64 programs to
recommend to other toddlers
who are just starting to com-
putey. Here's his list:
© KinderComp (Spinnaker
Software). A set of shape-, num-
ber-, and letter-recognition pro-
grams perfectly suited for
your toddler computer whiz.
* Astro Grover (CTW-Sesa-
me Street). Same as above,
featuring the lovable Sesame
Street muppet Grover.
¢ Ernie's Magic Shapes
(CTW-Sesame Street). Shape-
recognition program featuring
Ernie.
* Big Bird's Special Deliv-
ery (CTW-Sesame Street).
More early learning programs
featuring Big Bird. All three pro-
grams (Grover, Ernie, and Big
Bird) can be found in a single
package entitled The Sesame
Street Learning Library.
* Kids on Keys (Spinnaker
Software). Helps with key-
board recognition.
* Alphabet Zoo (Spinnaker
Software). Letter recognition.
¢ Learning with Leeper (Si-
erra On-Line). Fun, education-
al games hosted by cute little
onscreen characters such as
Leeper.
* Design-a-Saurus (Britan-
nica Software). Dinosaur rec-
ognition and naming program.
(Tommy is a dinosaur nut. He
carries a Tyrannosaurus Rex
doll to bed with him instead of
a blanket.)
¢ Dinosaurs Are Forever
(Polarware). More reptiles for
young dinosaur enthusiasts.
* Kermit's Electronic Story
Maker (Simon & Schuster).
You and your children can
cook up your own online pic-
ture books.
The cost of these programs?
“At worst, under a hundred dol-
lars,” Keith says. “The impor-
tant thing is to watch for yard
sales where you can pick up
children's software for justa cou-
ple of dollars. Also, sign onto lo-
cal bulletin boards where you
can pick up lots of freeware edu-
cational programs. Join a 64 us-
er group, and you're sure to run
into other young parents who
are eager to share with you and
your kids.” a
PROGRAMS
ULTIMATE ML MONITOR
By Ted Green and Ed Balchick
Examining and debugging troublesome
machine language (ML) routines or trying
to see how well machine code actually
works is usually a struggle. ML programs
run so quickly that it's difficult to
determine exactly what happens and
when it happens without altering the pro-
gram. A standard monitor's breakpoint re-
turns are not much help because the dis-
play is corrupted and the program halts.
Now, with the Ultimate ML Monitor, you
can execute any piece of ML code in
slow motion or single step through it one
command at a time! A special user inter-
face lets you interact directly with the ML
program, You can view and control the ac-
tual operation of the program in text or hi-
res mode as it runs; examine and modify
the program, data, or register values; and
allow the Kernal serial bus to access rou-
tines while in the single-step mode.
These and many other features, such as
full implementation of 6502 quasi-op-
codes, make the Ultimate ML Monitor a
powerful programming utility that you'll
wonder how you did without.
Getting Started
Ultimate ML Monitor consists of three
programs: two small programs that
make up the loader system and the
main program. These three files must
all be saved to the same disk, but the
program that you wish to monitor can
be on any disk, even another drive.
The setup portion of the loader sys-
tem is written in BASIC. To avoid typ-
ing errors, use The Automatic Proofread-
er to enter the program. See “Typing
Aids" elsewhere in this section. When
you finish typing this portion in, save it
to disk with the filename ULTIMON.B.
Next, the smart portion of the loader
system is written in machine language,
and you will need MLX, our machine lan-
guage entry program. Again, see “Typ-
ing Aids."" When MLX prompts, re-
spond with the following values.
Starting address: CC13
Ending address: CFFE
After you type in the loader program,
be sure to save a copy to disk with the
filename ULTIMON.L.
The monitor portion of the program
is written entirely in machine language
for speed and compactness. You
must enter this program with MLX.
When MLX prompts you, respond with
the following values.
Starting address: 8000
Ending address: 8EBF
Be sure to save a copy to disk with the
filename ULTIMON.O.
Loading the Program
Ultimate is very easy to use, Load and
run Ultimon.B as you would any BASIC
Program. Before you run it, however,
you should have the program available
that contains the ML code that you
wish to examine. This program should
be copied onto the same disk as the UI-
timate system if you are using a single
drive. If you are using Ultimate with a
two-drive system, have each disk in a
drive before running Ultimate.
As for what kind of program to look
at, the possibilities are almost limitless.
You aren't limited to looking at a pure
ML program, the kind you load with the
,8,1 extension and start with a SYS com-
mand that you often forget. Ultimate
will examine an ML program that
loads like BASIC or even a BASIC pro-
gram that reads the ML from data state-
ments and pokes them to memory and
then calls them with a SYS command.
In the latter two cases, Ultimate can
catch the ML portion just as BASIC
tries to execute it (if you start in single
step). This means that for BASIC pro-
grams in general, all of the BASIC is ac-
tually run by the interpreter. However,
once you are in the ML routine, you can-
not go back to the BASIC program.
When you have selected the pro-
gram that you wish to examine, load
the drive(s) and run Ultimon.B. The
screen will clear and display the follow-
ing prompt.
ADDRESS TO LOAD MONITOR:
The address must be entered as a dec-
imal value. The Ultimate program can
be put at any unused area from 2048
($0800) up to and including 36864
($9000). It can also be put at 49152
($CO00). If you try to place it above
49152, you will get an error message.
Placing the monitor in the RAM under
ROM (BASIC or Kernal) is possible, but
not recommended, except for ad-
vanced users. The most important fac-
tor in choosing the load address is de-
termining where there will be 4K of
memory that won't be used by the pro-
gram to be monitored.
Don't forget about BASIC variables.
If they are a problem, protect 4K for Ulti-
mate first. Ultimate will protect itself
from any memory access commands
while in any mode except full speed.
This protective feature will cause the
monitored program not to execute
those commands, possibly causing an
infinite loop in the monitored program.
If this happens, it's best to start over
and choose a new load address.
You'll then be prompted for a pro-
gram to monitor and a drive number
from which to load. If you enter the
same drive as the current drive, you
must copy your program to the disk
with the Ultimate system on it because
there is no time to switch disks.
You'll then be asked whether you
want to run the program in single-step
mode or at full speed. Enter S for sin-
gle step or F for full speed. You'll usu-
ally want to start in single-step mode
for most small programs or anytime
you want complete control over the
whole monitored program. Full-speed
mode is a good choice when you
want to monitor a large program, and
the piece of code that you're interest-
ed in is executed sometime after the
program begins.
If you select full speed, hitting the Re-
store key at anytime will break into the
program in the single-step mode (un-
less the program changes the NMI vec-
tor at $0318 while in full speed). When
the single-step mode is activated, the
status line will be displayed at the bot-
tom of the screen.
Using the Program
Once you enter the single-step mode
of Ultimate, the main program interface
is the interactive status line. Note that
all numbers on the status line are
shown in hex. The main features of the
status line are the following: PC
(which shows the contents of the emu-
lated program counter of the program
you are examining) and A, X, Y, and
SR (which are the current contents of
the emulated accumulator and the X,
JULY 1993 COMPUTE G-25
PROGRAMS
Y, and status [flag] registers).
To the left of PC is the space for the
full-speed Kernal routine indicator, an
asterisk (*). More about that later.
The most important feature of the stat-
us line is the command display field.
This contains the opcode mnemonic of
the current instruction and the operand
field. The operand field can be toggled
between two different types of displays
for some commands. The secondary
mode is like a standard disassembler
listing of the command.
The main display mode is what
gives Ultimate its powerful debugging
features. It has the ability to convert the
addressing mode into the actual mem-
ory location used by the CPU and to dis-
play it on the status line. For example,
if locations OE = 75, OF = 10, and
Y = AF, then the command above
would display as LDA $1124. You can
toggle between these two modes at an-
ytime with the asterisk key, even view
the two modes of the same command
without stepping. There are some com-
mands that will show an address
(branches, RTS, JSR, and so on) that
look identical. The command field also
indicates the address of the destina-
tion if a branch is taken. An RTS will dis-
play the actual address of the com-
mand after the JSR, not the address 1
that it pulls off the stack. There are
some other features used in the status
display, but these will be discussed in
the appropriate key description below.
Key Functions
A single keystroke activates many of UI-
timate’s key features.
F7
Pressing f7 executes the next program
instruction and displays the results on
the status line.
S)
Press S to enter slow motion program
emulation from single-step mode. The
approximate execution speed of this
mode varies greatly, but generally
takes about 150 times longer than real
execution speed. If there are a lot of
Kernal routines, the Kernal mode can
speed up the program considerably.
e
The back arrow exits the monitor and
G-26 COMPUTE JULY 1993
runs the monitored program in full
speed (real execution). Ultimate may
be corrupted if set at a bad address.
This key is good for running through a
large piece of code to get to a particu-
lar point. It also sets up the Restore
key to go to single-step mode.
Restore
Restore triggers Ultimate from full-
speed mode, breaks into the program,
and enters single-step mode at the cur-
rent command.
*
The asterisk toggles the operand field
display between disassembly mode
and address-calculation mode.
fl
This function key toggles the status
line on and off without running the pro-
gram, It's used to view the current vid-
eo display area under the status line.
Single step (f7) and slow motion (S)
are the only valid keys while the status
line is off.
H
Hunt allows you to enter an address
that is the actual computed address op-
erand of a command. The program
runs in slow motion until it finds a com-
mand that uses that address. This is
useful for seeing when a particular mem-
ory location is accessed in a program.
If the hunt is successful and the status
line displays the command line and
PC, you can toggle the display mode
(*) or look at the source code listing.
Hunt can also be exited at anytime
with the @ (At) key.
R
The R key will let the program run until
an address is reached. Enter the PC of
any command in the code and then
the program will run in slow motion un-
til the command is ready to be execut-
ed. This means that when the single-
step mode display comes on, the com-
mand before the one you selected will
be on the display line. That is because
when a command is shown, it has al-
ready been executed and the new PC
has been calculated. This is useful to
get the program to the beginning of a
specific subroutine or section of code
that you are interested in without hav-
ing to try to stop it by hand at the right
spot. This mode can be canceled at an-
ytime by pressing the @ (At) key.
J
Use the J key to run through a subrou-
tine in slow motion until the correspond-
ing RTS is encountered. This means
that all nested subroutines will be exe-
cuted and normally the program will dis-
play the RTS command when it returns
to single-step mode. Since this com-
mand triggers off the emulated stack
level, the program could also drop
back into single-step mode if two val-
ues are pulled from the stack or the
stack pointer is incremented by 2 be-
fore an RTS is encountered. This is use-
ful in allowing you to see if the routine
pulls its return address off the stack so
it can jump somewhere else. It's safe
to enter J-mode anytime after a JSR. If
it's used outside of a subroutine, it may
never drop back into single-step
mode on its own, but you can exit at an-
ytime with the @ (At) key.
Pp
P sets the emulated PC to a new aa-
dress; the beginning of a program; or
the end of a loop, subroutine, or wher-
ever. The new address is entered in
the PC space on the status line. After
the address has been entered, the val-
ue will reverse to show that you have to
make a decision. You must either
press Return or f3. Return resets the em-
ulated stack pointer to the top of the
stack, $FF. This is useful when restart-
ing the monitored program so that
stack doesn't wrap around. Pressing f3
will not change the current stack point-
er. This is useful for going to the begin-
ning of a loop: or jumping over some
code where you may need the values
that are on the program's stack. Noth-
ing changes but the location of where
the monitor reads the next command.
D
Dump has the same usage as Hunt ex-
cept that all occurrences of the desired
address usage (PC) are sent to the
printer. This will not stop until the @ (At)
key is pressed to cancel the mode.
K
This key toggles Kernal mode, the de-
sired execution mode of calls to Kernal
subroutines listed in the Kernal jump ta-
ble ($FF81-$FFF3). The default mode
is step-by-step emulation (in single-
step or slow mode). The special mode
is full-speed execution, which is desig-
nated by an asterisk to the left of PC
on the status line.
This mode is useful for speeding up
programs with heavy Kernal usage
where you are only concerned with the
routine’s net effect on the program. It al-
so allows serial bus I/O routines such
as disk access even in single-step
mode. Most Kernal routines that use
the serial bus cannot be successfully
single stepped. Note that if the Kernal
LOAD is used, the monitor program
could be corrupted because the self-
protection feature is temporarily disa-
bled.
If the Kernal mode is off, single-
step mode will still let you choose how
to execute each Kernal call. When you
get to a Kernal call, the address of the
routine will reverse. Return will execute
the routine in full speed, and f3 will
take it out of reverse mode and allow
you to continue to single step through
the routine.
If you press Return, the routine will ex-
ecute, and the next command shown
will be the RTS of the routine. Also, the
PC will show the address of the routine
itself and will be reversed to show that
you just executed that Kernal routine.
The RTS shows where the program is
returning to. If Kernal mode is on, then
all Kernal routines will be executed in
full speed with results as mentioned
above.
F
Fill lets you change the contents of any
memory location. Note that the monitor
will not protect itself, so use caution
when altering any monitor parameters
given in the article.
M
Memory will let you examine the con-
tents of a memory location. For areas
that have layers of memory such as
$D000 (character ROM and |/O device
RAM), the memory configuration used
by the monitored program determines
where the value comes from. To view a
different area, alter the offset value,
START + $0055, with the Fill com-
mand. START is equal to the address
you loaded the monitor to at the begin-
ning of the session. If you do this, you
must change it back before you contin-
ue, or the monitored program may
crash.
A, X, or Y
Enter a new value into a CPU register.
After a value is entered, it will reverse
to show that you have to make a deci-
sion. Return will modify the emulated
status register like an LDA command,
while f3 will leave the flags unchanged.
These features may be useful for alter-
ing loop indexes or putting a keycode
into A to be checked when letting the
Program go to the routine that handles
the key.
Ww
W redisplays the status line in the cur-
rent screen configuration. This is use-
ful in single-step mode when stepping
through code that alters VIC parame-
ters and the screen changes so you
can't see the status line anymore. Press-
ing W will recover it without stepping.
Cc
C cycles the color of the status line
text for text mode and hi-res mode stat-
us line displays independently. All 16
colors are available. A separate color
can be locked in for each mode and
will stay the same even if you toggle be-
tween monitor and full-speed modes.
You won't have to change it after switch-
ing modes.
In hi-res mode, the foreground and
background colors are changed.
Since the background color changes
only after all 16 foreground colors
have changed, it may take a while to
get the desired color combination. If
you know the color codes that you
want for the foreground and back-
ground, you can put the proper value
into START + $052D. (See F key
above.) The value should be in the fol-
lowing format: High nybble equals back-
ground; low nybble equals foreground.
See any 64 reference book for more de-
tails. To actually implement the color af-
ter changing the memory value, hit f1
twice.
Vv
V toggles multicolor mode. This key
will have effects in both text and hi-res
modes. You may find it useful to turn
off multicolor mode to read the status
line clearly and then turn it back on.
G
G toggles hi-res display between text
mode and hi-res mode. This is for see-
ing the status line should the display
mode change while single stepping
(like W key). Note that the proper
mode will be selected automatically
when changing between single-step,
slow, and full-speed modes.
Del
The Delete key has two functions. It re-
prints the current status line with the
command after using M or F keys, and
cancels data-entry modes of any keys
requiring hex input, such as H or P.
The @ (At) key cancels any slow-mo-
tion mode (from S, J, R, H, or D) back
to single-step mode.
Operational Notes
Not only are the regular 56 commands
of the 6502 interpreted, but also the 14
quasi-opcodes as defined by Raeto Col-
lin West in “Programming the 64” by
COMPUTE books. Most of these op-
codes have reproducible results, al-
though many don't seem to lend them-
selves to most programming tasks.
The new mnemonics that you may en-
counter while experimenting are ASO,
RLA, LSE, RRA, AXS, LAX, DCM, INS,
ALR, ARR, OAL, SAX, SKB, and SKW.
While there isn’t enough space to dis-
cuss quasi-ops at length, most of
them essentially decode in a way that
is similar to the LDA-type commands.
SKB branches over (skips) one’ byte,
and SKW skips two.
These codes are included here
when most other monitors ignore them
because some software may use them
to hide codes.
Another debugging feature is that Ul-
timate stops automatically at a BRK or
any invalid commands. BRK com-
mands can be continued normally, but
invalid opcodes will display three
back arrows (#-*) and the hex value
of the invalid opcode that has been en-
countered. At this point, reset the PC
to a new piece of code to continue.
Ultimate executes quasi-ops like it ex-
JULY 1993 COMPUTE G-27
PROGRAMS
ecutes all other commands. They are ex-
ecuted by the 6502 after any address-
es are decoded.
The program works by emulating ma-
jor features of the 6502 and 64. The re-
al stack and CPU registers are copied
to a protected area of memory within
the monitor, and all memory activity is
monitored in protected mode so that
the monitored program behaves as if it
were running in real mode. Also, win-
dow space is maintained and protect-
ed for the text screen line, color mem-
ory line, and one hi-res line so that the
status line may be displayed while any
program access to the real memory ar-
ea is sent to the window. All of this win-
dowing is generally transparent to the
user and the monitored program.
For example, an access to the first lo-
cation of the status line LDA $07CO, in
default area, is shown as such, al-
though the real load comes from the
screen window maintained by the mon-
itor. If a command tries to access the
monitor's protected memory, the com-
mand will not be executed. In single-
step mode the operand field will be re-
versed to alert you of this condition.
Advanced Uses
The Ultimon.O program is a stand-
alone program. It contains the routine
that actually performs the absolute ad-
dress conversions necessary to relo-
cate the program to the new address.
This makes it very useful to load and
run after another program has already
been loaded.
During the first call, Ultimon.O mod-
ifies itself so that later calls to the start
address enter the monitor mode. This
feature may be useful when a program
that you wish to monitor is so large
that it would overwrite Ultimate. Usual-
ly programs using some hi-res graph-
ics are like this. The solution would be
to load the monitor over a 4K section of
a bitmap that may not be needed
while you are trying to figure out some
portion of the program. The loading
could be performed by replacing a
small piece of code with a JSR to the
following routine (WEDGE). Then, the
wedge routine would have to be piggy-
backed onto another piece of the mon-
itored program.
= $FFBA
COMPUTE JULY 1993
SETLFS
G-28
SETNAM = $FFBD
LOAD = $FFD5
DEVICE =$BA
WEDGE LDA #1
LDX #<NAME+1 ;lo byte
LDY #>NAME+1 ;hi bytel JSR SET-
NAM
NAME LDA #69 ;decimal
LDX DEVICE
LDY #0 ;relocate
JSR SETLFS
LDA #0 ;load
TAX
LDY #>BEGINI JSR LOAD
JMP BEGIN
This loader will load, relocate, and kick
start into single-step mode any ML pro-
gram as long as Ultimon.O is saved as
filename E, BEGIN = safe area
(bitmap). Just find free memory for
WEDGE and insert JSR WEDGE into
code. Another technique is to load Ul-
timate ML Monitor with a standard mon-
itor that can perform a relocatable
load to any address. Then run Ultimate
so that it initializes itself to the new ad-
dress. The initialization routine ends
with an RTS. Now Ultimate is ready to
use or can be resaved from the new ad-
dress with a length of 4K. To call it,
just use JSR or SYS to go to the new ad-
dress.
ULTIMON.B
HG 5 REM COPYRIGHT 1993 - COMP
UTE PUBLICATIONS - ALL RI
GHTS RESERVED
MP 10 IFATHENSYS52243
KD 26 D=PEEK(186) :A=-1:LOAD"UL
TIMON.L",D,1
ULTIMON.L
CC13:a9 93
CC1B:21 D@
€C23:26 Dg
CC2B:62 38
€C33:18 20
CC3B:3E CD
CC43:A2 0G
CC4B:E8 EC
cc53:CC 26
CCSB:F5 26
CC63:C6 A2
CC6B:EF A2
CC73:EF CA
CC7B:CD A9
CC83:38 AS
CC8B:26 FG
26
8D
Ag
Ag
FG
cD
BD
3E
D2
EF
04
61
16
ol
14
FF
D2
3E
@D
13
FF
3B
FA
cD
FF
cc
Ag
BD
iwi
8D
ED
38
EE
cD
8D
ED
38
cD
cc
98
c8
EE
13
20
Ag
86
3E
ag
ag
Ag
86
3E
Ag
96
26
F4
co
3E
18
cD
6G
G2
cD
GE
oo
G6
G2
cD
26
22
D2
B9
26
cD
26
26
8D
A2
Ag
ED
CB
BD
34
E6
Al
A2
22
FF
DB
oF
BD
B4
E7
E6
97
94
CC93:CD
CC9B:AG
CCA3:A8
CCAB: 26
CCB3:F4
CCBB:C@
CCC3:14
CCCB:FF
CCD3: 26
CCDB:F4
CCE3:C@
CCEB: 3E
CCF3:C8
CCFB:54
CD63:4D
CDG6B:48
CD13:47
CD1B:4E
CD23: 2E
CD2B: 43
CD33: 2E
CD3B:45
CD43:60
CD4B:79
CD53:A9
CD5B:49
CD63:44
CD6B: 4F
CD73:4F
CND7B:45
CD83:47
CD8B: 42
CD93:4F
CD9B:55
CDA3: 26
CDAB: 9F
CDB3:53
CDBB: 46
CDC3:45
CDCB: 4P
CDD3:55
CDDB: 49
CDE3:57
CDEB: 41
CDF3:90
CDFB:CC
CEG3:A9
CEGB:3F
CE13:A6
CE1B:26
CE23:8E
CE2B:CD
CE33:A9
CE3B:06
CE43:61
CE4B:53
CE53:AB
CE5B:CF
CE63:CF
CE6B: 20
CE73:CF
CE7B:A2
CE83:C9
CE8B:4C
CE93:FF
CE9B:A9
CEA3:86
CEAS:AB
CEB3:45
CEBB:FB
3E
26
G2
FF
22
96
3E
62
FF
36
96
Da
FD
45
54
4E
41
54
4a
49
4A
28
7A
26
4c
4F
52
26
20
4F
41
20
45
42
52
49
45
4c
20
26
41
4c
49
45
AS
26
AG
A4
FO
AB
93
77
85
i)
DG
ag
3F
53
OF
FF
co
20
FO
CE
)
99
i)
92
C6
CF
69
cD
cD
96
c8
Ag
FO
cD
90
c8
EE
oo
26
49
43
4E
4PF
45
4c
54
45
Ag
20
BC
54
41
46
54
4D
4F
26
54
4E
46
CT)
26
26
45
52
4D
57
52
4F
26
29
cD
26
GE
cD
0@
53
AB
AG
6B
26
1E
32
32
oO
1E
G2
FF
G2
CF
FS
8D
1E
A2
85
45
@ 73
Cc AS 64 FC
G3
FB
GG
CFEB:FB 46
CFFB:48 6C
ULTIMON.O
8600:EA EA
18
8628:8D 18
863G:A9 81
8638:06 G1
93
8D
82
86
86D8:3D C9
8GD8:49 81
G4
8D
13
85
28 C3
co 36
53 cD
AB 26
53 FG
G2 AG
G3 88
A@ CD
33 CF
@G AC
26 44
AE 32
AD 34
BD FF
E9 FE
AQ 88
09 83
G8. 63
1E CF
2D 84
G1 FG
7B AG
85 14
66 AG
28 73
97 D&
48 E6
EB B7
15 E9
E9 FE
AQ 88
69 63
68 85
A7 Ag
8D 69
AD 26
AS 65
6C FB
48 AQ
G3 OG
48 26
85 63
48 60
49 8D
83 AQ
8D 19
A2 6G
E8 DG
AQ 7B
20 13
@6 85
8C G3
83 8c
DG 82
83 BC
86 8G
206 FF
FO 33
cD DC
66 DC
11 A9
FG 65
53 80
AE FF
26 85
co 63
AD 86
FO EG
89EG:92
8GE8:C9
8GFG:AE
8GF8:18
8196:82
8198:85
8119:86
8118:D9
8126:C9
8128:84
8139:82
8138:D2
8146:48
8148:82
815G:1F
8158:8D
8166:D0
8168:01
8176:99
8178:C5
8180:86
8188:86
819G:A9
8198:21
81AG:4C
81A8:D9
81BG:3D
81B8:61
81C6:43
81C8:A2
81D0:48
81D8:83
81EG:68
81E8:68
81FG:A2
81F8:4C
8296:20
8268:D0
8219:D9
8218:81
8226:Dd
8228:4C
8236:84
8238:C8
8246:89
8248:03
8256:8A
8258:29
8260:A9
8268:AG
8276:20
8278:84
8289: 26
8288:E7
8299:86
8298:BD
82AG:F7
82A8:03
82BG:63
82B8:AD
82CG:40
82C8:80
82D6:B9
8309:69
8398282
8316:D8
8318:8D
8326:AD
8328:47
8339:8D
8338:8D
8346:8D
8348:29
8350:85
8358:8C
8360:61
8368:FG
8376:D1l
8378:D2
8386:44
8388:20
839G:E8
8398:64
83AG:4C
83A8:83
83BG:87
83B8:BA
83CG:21
83C8:C8
83DG:B9
83D8:84
83E9:69
83E8:EE
83FG:63
83F8:90
8400:A9
8408:GE
8416:EF
8418:87
8420:62
8428:B9
8430:A9
8438:05
8446:2G
8448:A9
8456:20
8458:A2
846G:A9
8468:0B
8470:D7
8478:AD
8483:84
8488:A2
8490: 28
8498:84
84AG:84
84A8:D1
84B0:81
84B8:AD
84CG:4A
84C8:6F
84D6:83
84D8:69
84EG:93
84E8:60
84F9:8D
84F8:8D
850G:F9
8508:29
8516:29
8518:1E
8520:E8
8528:8C
8538:85
8538:8D
AD
82
48
46
8E
49
ag
co
4A
Bo
8G
A8
1D
15
BE
ag
6a
83
26
8A
83
i)
D8
De
BE
F4
8B
DD
82
AB
08
83
63
E@
A2
A8
F9
26
A2
6c
AG
12)>)
4B
32
07
26
26
96
26
4c
82
BE
bg
4c
29
18
96
58
FF
8D
ag
AD
6c
E9
GA
8c
8c
86
8D
26
JULY 1993 COMPUTE G-29
PROGRAMS
8546:85 8D El 8C 8D E3 8C 8D 19) 8770:D7 82 48 8D 55 88 4A 4A 99 )89AG:AC D7 82 CB 6C DB 1D BC CO
8548:95 85 8D 54 85 8D B7 86 CE| 8778:29 07 8D 95 87 AB BO 2E 69 |89A8:49 84 AG 4C BC D7 82 EB BC
8550:AS 27 B9 CG G7 99 4A SE 7A| 8780:8D 8D F9 82 68 29 E3 G9 D9 |89BG:8E BO 89 BD BA 89 AD Bl Cl
8558:B9 CO DB 99 72 8E 88 10 74| 8788:0C 8D D7 82 AG G1 26 DG 3E |89B8:AD FF FF 99 Dl 82 CE B9 2C
8560:F1 A9 GG AB 27 99 CG nB D5| 879G:82 8D 3F 84 AD BG 6G AD 3G |89CG:89 88 16 F4 26 G6 83 AD DS
8568:88 18 FA 6G AD 18 DG 29 B9| 8798:95 87 C9 G3 FG 14 4A BG DA |89C8:80 8D 61 84 AG 1C 20 84 2B
8570:FG 4A 4A G9 G3 8D 83 85 3B| 87AG:G6 26 B3 87 4C AA 87 26 ES |89D0:86 9G 11 C8 CB 20 84 86 5G
8578:AD @@ DD 6A 6A 6A 29 CG CC| 87A8:BA 87 AD D9 82 69 BB 8D 91 |89D8:BG BA 26 55 83 DO G6 26 AB
8580:49 CO 69 6G 6G AI GG DO FB| 87BG:D9 82 60 AD 48 8D AG G7 F4 |89RG:Cl 82 FG G9 6G 2C 67 83 2A
8588:16 AD E8 8C FG BC AG 27 BD] 87B8:DG G5 AD 47 8D AG GF 18 CG |89E8:10 G3 EE A7 80 AY BB DG 98
8590:B9 9F 8A 99 CO G7 88 19 8E| 87CG:6D DB 82 8D DB 82 8C 3B GB |89FG:1A AD 8C 8G BD 86 85 DG 74
8598:F7 60 8A 48 AD E8 8C 8D 45] 87C8:8D 68 C8 8C Dl 87 AG Gl 87 |89FS8:EB AS 86 8D BB 83 26 CE 5G
85AG:D9 85 AD E9 8C 8D DA 85 24/ 87DG:B5 GG.99 DB 82 CA 88 10 DB |8AGG:83 AY BG BD BB 83 20 48 8E
85A8:78 AD 18 D@ 4A 29 G1 G9 6D| 87D8:F7 60 28 6F 87 C9 G2 DO 2F |8AG8:83 DB D9 AD BC 8G BD 86 3d
85B0:1A 8D BD 85 A5 @1 29 FB BB| 87E@:1C AG G1 8C 61 84 88 20 SD |8A10:85 DG G3 20 92 86 20 20 BD
85B8:85 G1 AG G@ AY BG BD D7 1B| 87E8:DG 82 AD EA 8D DO 82 G8 C5 |8A18:83 26 D7 82 20 2F 83 AD 8C
85C0:85 B9 9F 8A GA 2E D7 85 D7| 87FG:20 26 83 20 D7 82 26 2F C2 |8A20:8C 8G BD 86 85 DO G3 20 3B
85C8:GA 2E D7 85 BA 8D D6 85 71/ g7F8:83 28 4C F4 82 6A 6A 96 CF |8A28:E9 84 AI 7E 8D EG 83 AD 11
85D0:2E D7 85 A2 67 BD FF FF F2| gggg:1p AG G2 26 DG 82 8D 3A EF |8A3G:86 8D 96 83 26 13 83 AC F4
85D8:9D FF FF CA 16 F7 AD D9 F4|/ gg98:84 20 97 87 AO 8G 8D 61 9A |8A38:B2 82 AE EG 83 EG 7E FO BB
85E0:85 69 68 8D DI 85 96 G3 EB! 8816:84 AD 8C 89 DO G3 4C FA 8E |8A40G:07 C8 BOY 4A 8D 8D 49 8D AD
85E8:EE DA 85 C8 C@ 28 DG CC 74] §818:85 AG #2 4C FC 85 2A 90 FB |8A48:C8 B9 4A BD 8D D1 82 CB D3
85F9:A5 G1 G9 G4 85 G1 58 68 BO! gg2g:6n 4a 4A JO E7 20°BA 87 D7 |8A50:B9 4A 8D 8D D2 82 8C B2 CB
85F8:AA 60 AG FF 8C 63 86 EE Fl/ gg28:4Cc GC 88 AC D8 82 4A 4A ED |8A58:82 EG 7E DO G8 EE Dl 82 ES
8606:93 86 AJ GD GA GA AB 20 4F | 993g:9¢ GB A2 GB 20 CA 87 28 FB |8A69:DG G3 EE D2 82 20 G6 83 CD
8608:84 86 BS GA AD 63 86 C9 FF/ gg38:al 87 4C GC 88 AE 47 8D 61 |8A68:A9 G2 8D 61 84 68 AC B2 4C
8614:06 96 EC 4C EF 87 C8 C8 9E| gg4g:20 CA 87 36 C7 20 6F 87 2D |8A70:82 26 13 83 26 EC 82 99 BC
8618:26 84 86 BG EF AD G3 86 F4/ gg4qg:Fg 8A78:4A 8D 88 AD Dl 82 99 4A 18
8620:C9 G4 FG 3A BO 48 GA AB 18) gags 8A80:8D 88 AD 49 8D 69 14 99 1B
8628:0A AA 38 AD D8 82 48 FD 26| gg5 8A88:4A 8D 88 8C B2 82 AD FE F9
8630:E0 8C 8D D8 82 AD DI 82 11 886 8A9G:FF 8D Dl 82 AD FF FF 8D 66
8638:48 FD El 8C 8D D9 82 18 DE| gg6g:ar DG 96 AD G6 BD 95 87 BC |8A9B:D2 82 24 Cl 82 FG C6 2G 5D
8640:AD D8 82 79 GB 8D 8D DB 6C| gg7g:pg BF 4A 94 97 AD D7 82 C5 |8AAG:1G G3 3D 20 26 24 2G 20 GA
8648:82 AD D9 82 79 G1 8D 8D DD| gg7g:29 DE C9 BE DG AT 20 B3 11 | 8AA8:26 24 20 26 26 20 26 20 BD
8659:D9 82 20 EF 87 68 8D D9 CO| gggg:a7 4c gc 88 AD D7 82 8D D1 |8ABG:20 20 20 G1 3D 20 20 20 BC
8658:82 68 8D D8 82 60 AD 86 69| gggg:55 88 co 78 DG O7 AY 7F 9C |8ABB:18 3D 20 20 26 19 3D 20 2F
8660:8D BB 83 4C F4 82 20 26 76) ggqg:ag og 20 74 86 C9 58 DG 1A | 8ACG:2G 26 13 12 3D 2G 26 48 64
8668:86 AD 49 8D 29 64 DG 13 34) gg9g:¢3 24 74 86 AO G1 BD F9 16 | 8AC8:55 4E 54 49 4E 47 26 46 51
8670:A9 66 AG GB 8D BD DC BC 4D) ggag:g2 DG AE AD D7 82 8D F7 B3 |8AD0:4F 52 20 24 FF 3A GD FF 6B
8678:1A D@ AD 19 DG 8D 19 DB CD! ggng:g8 AG G1 20 DG 82 30 15 4E |8AD8:28 26 26 2C 18 29 28 20 AG
868G:AD @D DC 68 38 AD D8 82 FS| ggng:18 24 13 83 6D D8 82 8D Dl |8AEG:20 29 2C 19 28 26 26 26 49
8688:F9 EG 8C AD D9 82 F9 El E5| ggng:pg 82 AD D2 82 69 GG 8D Gl |8AE8:26 26 2C 18 26 1E 66 AB OF
8696:8C 60 AD E8 8C DG 19 AD C3! ggcg:p9 82 4c DF 88 49 FF 18 68 |8AFG:Bl AE 66 G6 Bl 6C 66 G6 C9
8698:9A 8D DG 86 AI BE 8D D1 4D! ggcg:69 G1 8D DB 82 38 20 13 56 | 8AFS8:Bl AS 66 66 Bl 1B 66 AB BO
86AG:86 AD EB 8C BD D3 86 AD B8| ggpg:83 ED D8 82 8D DB 82 AD £4 | 8BGG:Bl AE 66 G6 Bl 27 66 63 23
86A8:E9 8C 8D D4 86 20 C2 86 8D| ggng:p2 82 E9 GB BD DO 82 18 22 | 8BG8:Bl AS 66 G6 Bl 54 83 AB DF
86BG:AG 27 B9 4A 8E 99 CO G7 17 8B10:B4 12 63 75 B4 72 G3 75 AB
86B8:B9 72 8E 99 C@ DB 88 10 41 8B18:B4 12 63 75 B4 15 O3 AB 71
86CG:F1l 68 AG GG 20 CF 86 EE 2F 8B20:B4 AE 03 75 B4 84 63 63 16
86C8:D1 86 EE D4 86 AB 3F BY 7A| ggrg:03 4c EC 82 AD DB 82 8D C7 | 8B28:B4 AB G3 75 B4 7B 45 AB 45
86NG:FF FF 99 FF FF 88 D@ F7 CC! g9gg:p1 82 AD D9 82 8D D2 82 62 | 8B3G:B7 AE 45 60 B7 69 45 66 CB
86D8:66 26 88 84 A2 G9 26 F7 E8| g998:66 20 EF 82 AC B2 82 AD SC | 8B38:C9 51 45 60 B7 21 45 AB AF
86EG:86 8D DD 82 20 F7 86 8D F3| g91g:49 8D AE EG 83 EG 6F BG 3E | 8B40:B7 AE 45 60 B7 2D 45 63 ED
86E8:DC 82 60 26 EF 86 60 8E FB| 9918:GE EG 6C FO G3 AD 46 8D EF | 8B48:B7 A8 45 66 B7 7E GO AB 77
86FG:F6 86 20 96 84 A2 GB 24 57| g929:99 4A 8D CE B2 82 60 DO 62 | 8B5G:BA AE GG 78 BA 6F GG 78 G4
86F8:07 87 GA GA GA GBA 8D G5 ES| gq28:Gm C8 48 28 B9 4A 8D G8 1A | gB58:CC 51 GG 78 BA 24 GG AB C3
8700:87 26 G7 87 G9 BG 68 AD E6| g939:8p 46 8D 68 4C 3B 89 CB FE | 8B6G:BA AE GG 78 BA 8A GG 63 6B
8768:2A 20° 21 87 CA 20 36 87 9B/ g938:89 4A 8D 8D 49 8D 8C B2 91 | 8B68:BA AS GO 78 BA AE 8D AE E8
8716:F9 1B AG GE D9 BE BD FG 76| g949:82 6G AD EG 83 C9 9C FG DD | 8B70:BD 93 8D 90 BD 42 AB 9F F3
8718:05 88 10 F8 36 EF BO 1E 30/ g949:99 AD 47 8D 8D B2 82 4C 95 | 8B78:AB 93 8D 90 BD G9 8D AB DD
8720:8D 9D 9F 8A 98 48 26 85 A5| go5g:EF 82 AD 49 8D 48 28 AE D2 | 8B8G:AB 93 8D 98 D8 AS 8D A2 28
8728:85 68 A8 E8 64 68 68 68 95/ g95g:—2 82 G8 BE 47 8D 68 8D 1E | 8B88:AB AB 8D AB AB 5D 57 5A A8
8736:68 68 68 4C C2 8G 78 8A F2| g9¢9:49 8D 4C EF 82 AD EG 83 14 | 8B9G:C@ 5D 57 5A CB 99 57 96 Al
8738:48 A5 C6 48 A@ GA A2 FF A4! g9¢68:c9 54 DG 1B AC B2 82 88 FE | 8898:CF 5D 57 5A CO GC 57 AB 1G
8740:CA DO FD 88 DG F8 AD FF EE| g97g:18 AD D1 82 69 G2 99 4A 2E | BBAG:CG 5D 57 5A CB 3G 57 9C 12
8748:8D G2 DC A9 BG BD G3 DC ED! g97g:8p cg AD D2 82 69 GG 99 BA | 8BA8:AB 5D 57 5A D5 39 33 AE 26
8750:26 9F FF A5 CS C9 48 DG 58) gogg:4a gp 88 88 8C B2 82 20 GA | BBBG:C3 39 33 3C C3 4E 33 3F 1F
8758:65 8D 6C 87 FG DE CD 6C 5E) g9gg:13 83 AG G1 20 DG 82 AA 1E | gBBg:D2 39 33 3C C3 18 33 AB 42
8760:87 F@ D9 8D 6C 87 68 85 5B) g99g:cg 20 DG 82 8E D1 82 8E Al | gBcd:C3 AE 33 3C C3 2A 33 63 2G
8768:C6 68 AA A9 4G 58 60 AD B6| g999:3F 84 8D D2 82 8D 3A 84 8E | gBCa:C3 AB 33 3C C3 36 81 AE BE
G-30 COMPUTE JULY 1993
8BDG:C6
8BD8:AB
8BEG:C6
8BE8:C6
36
36
AE
Ag
81
81
81
81
48
48
48
48
4B
OF
87
99
81
81
8i
06
63
AB
63
80
8C16:06
8C18:08
8C20:1B
8C28:02
15
@8
66
21
A6
1B
Ch)
46
6
12
1c
62
G6
1B
62
76
08
2c
1c
98
1B
68
32
21
8C38:4B
8C40:04
8C48:36
54
G2
E4
61
a4
32
62
64
06
E4
61
62
8C76:06
8C78:52
8C86:9D
8C88:08
8090: 26
8C9B8: FF
8CAG: GG
8CA8:83
8CBG: 20
8CB8: 00
8CCO:71
8CC8:DA
8CDO:84
8CD8:6E
8CEG:CG
8CE8: G0
8CFG:00
8CF8:1A
8D0G:4A
8D68: 60
8D16:3B
8D18:6A
8D26:32
8D28:01
8D36:62
8D38:6C
8D40:16
8D48:FD
8D50:A5
8D58:48
8D60:26
8D68:A5
8D76:63
8D78:17
8D86:8A
8D88:6A
8D9G:8A
8D98:24
8DAG:2E
8DA8: 27
8DBG:E5
8DB8:85
8DCG:C9
8DC8:A9
8DDG:A9
8DD8:AA
8DEG:28
8DE8:E0
8DFG:DG
8DF8:90
99
08
32
A4
gc
FE
93
Ci)
DB
6c
Ut)
87
88
8A
O7
Oo
80
DG
8E
o@
68
1c
33
G2
G3
6c
1B
48
23
AS
48
28
86
8D
8D
85
69
18
85
38
FE
28
G4
63
G1
AS
A8
62
14
3c
46
9D
62
FO
A6
14
93
GE
UT)
AS
66
45
69
E9
E8
46
DA
1B
72
7
6B
14
34
G3
G2
6
26
AS
48
24
AS
48
FE
18
19
FC
GA
8A
26
AS
98
A8
96
De
2c
28
Bl
FO
AG
cg
68
G2
AG
6c
42
9A
6G
27
4B
0o
71
88
89
82
07
96
8F
De
8E
86
16
12
35
@4
G2
OF
26
FC
A5
48
G2
i)
ag
G3
63
ag
85
69
18
FB
SF
Bl
14
26
ag
29
26
E4
G2
96
48
9D
08
62
9A
16
cB
66
oo
59
GE
89
89
82
DB
G1
bc
FE
8E
86
18
15
37
06
63
GE
FE
AS
48
27
AS
85
85
16
16
85
AQ
85
69
FD
oo
A8
@5
07
AA
4a
62
G4
FD
G8
68
36
AG
68
EF
gc
Cs)
71
OB
vi)
27
A3
34
EC
E8
CI)
GE
FA
4a
23
1B
36
38
G2
C4)
64
48
FB
AS
48
G4
FD
FB
63
63
22
EF
25
@D
AS
Bl
Bl
BG
96
DG
4A
DG
cg
co
38
99
62
72
A6
12
DF
94
ao
25
98
@2
88
8A
82
DB
G2
Dc
EF
8D
38
26
31
39
G2
6c
66
AS
48
25
A5
48
A6
Ag
18
69
18
85
AQ
85
FC
FD
24
G4
63
14
85
@4
63
8G
E9
8E38:03
8E46:B9
8E48:F7
8E50:85
8E58:68
8E60:22
8E68:85
8E70:68
8E78:48
8E80:63
8E88:EA
8E96:05
8E98:G6D
8EAG: 6D
8EA8:6C
8EBG:GC
8EB8:6C
G3
85
Ag
GE
Bl
65
38
CA
99
28
85
68
23
85
66
BA
Gl
2c
Fl
65
cg
Dl
Dg
42
91
FD
8B
85
FD
3
E9
16
6G
68
26
85
68
FD
EA
FE
68
0B
gc
@D
oc
gc
oc
GE
18
9A
FD
A2
FB
FC
18
AG
88
64
85
68
FB
85
EA
@1
68
G2
gc
@D
gc
6c
6c
GE
AS
E6
18
19
c8
AG
65
16
16
68
27
85
68
FE
68
DS
EA
37
61
OB
cD
DS
DD
Cr)
9A
A4
cc
5D
FB
BE
A3
CA
ES
78
1B
2D
45
88
6A
EB
39
DB
co
98
3B
FB
AE
1B
Ed Balchick is an electrical engineer
from Pittsburgh, Pennsylvania, who en-
joys programming in machine lan-
guage and in C. Ted Green is an un-
employed painter from Cleveland,
Ohio, who also enjoys programming.
They both enjoy modifying other peo-
ple's games so they (Ed and Ted) can
win them.
RASCALS
By Bob Broderick
Just before dozing off during another bor-
ing haul of galactic space animals in
your freighter, you notice a red light on
the control panel. Uh-oh! That warning
light means there's been a power failure
in the cargo hold, and all of the animals
have escaped from their electric holding
cells. They are a wild and dangerous
bunch, but you've got to get them cor-
ralled. Without a moment's hesitation, you
suit up and set out to recapture those in-
tergalactic rascals!
Rascals combines arcade action with
strategy in a fast-paced game for the 64
that is written entirely in machine lan-
guage. To enter it, you'll have to use
MLX, our machine language entry pro-
gram. See “Typing Aids” elsewhere in
this section. When MLX prompts for start-
ing and ending addresses, respond
with the following.
Starting address: 0801
Ending address: 10B8
Be sure to save a copy of the program
before you exit MLX. Although Rascals
is written in machine language, it
loads and runs like a BASIC program.
Playing the Game
As the brave freighter captain, you con-
trol the figure in the lower right-hand cor-
ner of the screen. Use keys |, J, L, and
K to move it up, left, right, and down,
respectively. The object is to trap all
the moving creatures on the screen. To
do this, you must push crates that are
scattered around the screen to form a
corral, surrounding a rascal. The rascal
mustn't be able to move in any direc-
tion, including diagonally, or it will es-
cape. You can move as many crates at
one time as you like.
Warning! This is a serious game.
You have one life and can lose it by
coming in contact with a rascal. If all
the rascals have been boxed in, you've
won the game. After each game, type
Y to play again or N to end.
A Few Questions
However, before you can begin play,
you must answer the questions on the
opening screen. The first question will
ask you how many rascals you want
loose in the hold. Enter a number from
1 to 7. Remember, the fewer rascals
there are, the faster they'll go!
The next question regards the num-
ber of crates available to you. A high-
er number will give you more boxes,
making the game easier. A setting of 1
will give you the least amount of
crates.
The third question regulates the
speed at which the rascals move. A set-
ting of 1 is the fastest, while 9 is the
slowest. Finally, you will need to con-
firm your answers to begin play.
A timer at the top of the screen
counts the number of moves the ras-
cals have made, so you can compete
against your best efforts. Enjoy—and
get those rascals!
RASCALS
@861:3C
G809:36
@811:98
@819:D6
@821:AD
9829:38
9831:8E
G839:GA
G8
34
BD
F7
17
A2
68
68
GA
oo
49
EE
68
31
98
4c
6G
Ul)
68
14
co
AG
8c
oo
9E
Ul)
9D
68
29
39
69
29
JULY 1993 COMPUTE
36
A2
E8
68
AQ
G8
8E
i)
64
E3
FD
EG
73
44
1p
DA
G-31
PROGRAMS
6841:00 G0 G8 G6 GG GO GG GF CG| GA71:FE A9 26 AG 28 91 FE AS AS|GCAl1:Bl FE 36 28 AQ 87 91 FE 68
9849:A9 97 8D 86 62 8D 21 DG 63| GA79:FE 8D BS 21 AS FF 8D B9 9B|GCA9:A9 26 88 91 FE AS FE 8D E2
9851:A9 93 26 D2 FF AO OG 8D 8G| GA81:21 18 69 D4 85 FF AG GG 14|GCB1:B8 21 AS FF 8D B9 21 EE A7
9859:21 D@ 66 OG FF AS 9G 8D 6E| BA89:A9 G4 91 FE 4C CB 21 C9 33] GCB9:B8 21 DG 63 EE BO 21 18 79
@861:21 D@ AI BE 8D 26 DO 78 53] GA91:89 DB G3 4C CB 21 C9 88 C2] 9CC1:69 D4 85 FF CB AQ G4 91 FA
6869:A5 G61 29 FB 85 G1 A2 G6 E6| GA99:FG G6 4C 72 23 4C CB 21 5B] GCC9:FE 4C CB 21 4C 32 22 26 8F
6871:BD 66 D8 9D 68 38 BD GG B1| GAA1:AD BA 23 16 93 4C C9 22 9F|GCD1:61 25 26 DF 24 20 2A 25 G1
879:D9 9D 6G 39 BD G9 DA 9D B2| GAA9:A2 G1 AS FE 18 6D BA 23 @3|9CD9:20 8D 24 A2 66 BD 41 27 B4
9881:00 3A BD @@ DB 9D @@ 3B 68| GAB1:85 FE AS FF 69 GG 85 FF 53|@CE1:FG G7 9D GG G4 E8 4C 80 C4
6889:BD El 27 9D @@ 3C BD GG 1C| GAB9:AG GG Bl FE C9 26 FG GC Gl | 9CE9:24 60 AC D7 25 A2 8G BE 82
@891:DD 9D @@ 3D BD @9 DE 9D 15| GAC1:C9 89 FG CB C9 88 DG DS DF | GCF1:ED 94 8E ED D8 88 FG 39 BE
6899:G6 3E CA DG D3 AS Gl G9 DF| GAC9:E8 4C 4D 22 AS FE 85 39 9£ | BCF9:E8 8E GD 65 8E GD D9 88 G1
O8A1:04 85 G1 58 A2 GG BD AA F5| GAD1:A5 FF 18 69 D4 85 3A AQ 2D|GDG1:FG 2F E8 8E 2A G5 BE 2A 12
G8A9:21 9D 54 28 E8 D@ F7 26 59| GAD9:GF AG GG 91 39 AS FE 38 4D] GDG9:D9 88 FO 25 EB BE 6B G5 FF
@8Bl:72 24 26 5E 20 20 CB 21 28] SAE1:ED BA 23 85 FE AS FF E9 DG@|@D11:8E 6B D9 88 FO 1B 58 8E 65
@8B9:4C 52 26 78 AO Gl 8D 1A 96] BAE9:50 85 FF AG GG Bl FE AC DA|@D19:D3 G5 8E D3 D9 88 FG ll 51
@8C1:D9 8D 12 DG AI 7F 8D GD 6G| GAF1:BA 23 91 FE CA DG E6 AQ SF |GD21:E8 8E 1l 66 8E 11 DA 88 CC
98C9:DC AJ 1B 8D 11 DG AY 83 91| GAF9:26 AG GB 91 FE AD BS 21 AG|GD29:FG G7 ES 8E Al G6 BE Al 67
G8D1:A2 20 8D 14 93 8E 15 G3 AD} OBG1:18 6D BA 23 8D B8 21 AD 47 |@D31:DA A2 87 8E BE 67 AO 14 B4
@8D9:AD D9 25 8D AY 21 58 66 97| GBG9:B9 21 69 G@ 8D BO 21 AS AC | GD39:8D BE DB 60 AQ FF 8D GF C2
@8E1:EE 19 D@ CE AY 21 DO G9 33| GB11:FF 18 69 D4 85 FF AQ G4 2B |GD41:D4 AO GF 8D 86 G2 8D 21 63
@8E9:AD D9 25 8D AQ 21 20 9A 71] GB19:AC BA 23 91 FE 4C CB 21 93 | @D49:DG AQ 93 26 D2 FF AQ GC AG
G8F1:20 AD GD DC 4C 31 EA AE 98] @B21:4C 32 22 4c CB 21 38 E9 3@|@D51:8D 21 DG AD 81 BD 12 D4 6A
@8F9:9E 21 BD AA 21 38 E9 29 EA| OB29:86 8D BA 23 A2 G2 A5 FE D3 |GD59:A9 GG A2 G4 85 FC 86 FD G8
6961:85 FC BD AB 21 E9 @@ 85 BD/ @B31:38 ED BA 23 85 FE AS FF DB |@D61:A2 69 AD 1B D4 CD D8 25 2B
G969:FD AG GG A2 GG 20 GF 21 EC| GB39:E9 GG 85 FF AG GG Bl FE SC | 9D69:96 13 E6 FC D@ G2 E6 FD 97
G911:A@ 28 26 6F 21 AG 5G 20 C4| GB41:C9 26 FG GC C9 89 FO DB 52 |GD71:A5 FC C9 E7 DG EA AS FD DG
6919:6F 21 EG @6 D@ G6 EE 6A 2E| GB49:C9 88 DG D7 EB 4C D1 22 3c |GD79:C9 G7 DG E4 69 AD 88 AG FD
@921:21 4C 15 21 8E 6C 21 AD Al| GB51:A5 FE 85 39 AS FF 18 69 G5 |9D81:G9 91 FC 4C GD 25 6G A2 B4
9929:1B D4 CD 6C 21 B® FS AA E6/ GB59:D4 85 3A AO GF 91 39 AC FA |GD89:28 AQ 89 9D OF G4 9D BF 35
6931:BD A@ 21 AA AG 29 Bl FC 23} 6B61:BA 23 Bl FE AG GG 91 FE EA |@D91:G7 CA DG F7 A2 27 AG G4 72
9939:48 AJ 20 91 FC 8A A8 Bl GC| GB69:CA FG 11 AS FE 18 6D BA 8B |@D99:86 FC 84 FD A2 17 AQ 89 F4
9941:FC 8D 6B 21 68 91 FC 48 84] @B71:23 85 FE AS FF 69 GG 85 DF |@DAl1:8D BF 07 AG GG 91 FC C8 66
6949:AE 9E 21 8C 6C 21 AS FC 77| OB79:FF 4C G2 23 AY 26 AC BA F6 |GDA9:91 FC CA FG 16 AS FC 18 5D
G951:18 6D 6C 21 9D AA 21 A5 E9| 6B81:23 91 FE AD B8 21 38 ED FG |@DB1:69 28 85 FC A5 FD 69 GG G3
9959:FD 69 08 9D AB 21 AS FD C9| 9B89:BA 23 8D BS 21 AD B9 21 57 |GDB9:85 FD 4C 41 25 60 AY 93 45
6961:18°69 D4 85 FD 68 91 FC 7E/ GB91:E9 G6 8D B9 21 AS FF 18 Al |@DC1:20 EB 1F AQ 1E 8D 18 DO 8D
9969:AD 6B 21 C9 87 DG G3 EE 62] 6B99:69 D4 85 FF AQ G4 AG GG EB | GDC9:A2 GG BD DA 25 9D GO G4 3E
6971:BA 21 EE 9E 21 EE 9E 21 14] 6BA1:91 FE 4C CB 21 20 5E 23 EF |@DD1:BD 41 26 9D 67 64 E8 D@ A7
6979:EE 6E 21 AD 6E 21 CD D7 G9] OBA9:A2 @8 BD 4B 28 9D D@ G4 DC | GDD9:F1 AY 38 8D D3 25 26 C3 GE
9981:25 F@ G1 6% AD 6A 21 CD AF| 6BB1:A9 61 9D DA D8 CA DG F2 C4 |GDE1:25 8D B7 64 38 ED 30 8D 86
6989:D7 25 D@ 03 EE 6D 21 A9 34] OBB9:4C 75 23 A2 66 BD 31 28 63 | GDE9:D7 25 AQ B6 8D DF G4 AQ 77
6991:00 8D 9E 21 8D 6E 21 8D £2] GBC1:FG BC 9D DB G4 AD Gl 9D 7A | GDF1:3A 8D D3 25 26 C3 25 8D 41
6999:6A 21 8D 9F 21 A2 36 EE B7| OBC9:DG D8 EB 4C 68 23 60 20 DG | GDF9:DF G4 38 E9 GB 8D DB 25 16
G9A1:97 64 AD 97 G4 C9 3A DG 3C| GBD1:5E 23 78 AO 31 A2 EA 8D Gl | GEG1:A9 BS 8D 67 G5 2G C3 25 D6
G9A9:1D 8E 97 G4 EE 96 64 AD A8| GBD9:14 G3 8E 15 G3 AD 78 8D 1B | GEG9:8D G7 G5 18 EO 2F 8D D9 DB
G9B1:96 64 C9 3A DG 10 8E 96 67| GBE1:19 D@ AO FG 8D 1A DG AO 1D | GE11:25 AO AG 8D 2F G5 20 E4 C9
69B9:04 EE 95 @4 AD 95 G4 C9 12| GBE9:FF 8D GD DC A2 GO BD 54 B7 |GE19:FF FO FB C9 4E FO 9F 60 63
G9C1:3A D@ G3 BE 95 G4 69 GO EB| GBF1:28 9D AA 21 CA DG F7 58 CC |GE21:20 E4 FF CA D@ FA 20 E4 CA
G9C9:08 G8 GG GG 2G 9G 21 BO 12| GBF9:A2 GG 26 E4 FF CA D@ FA 7B | GE29:FF FO FB C9 31 90 F7 C9 23
G9D1:03 20 8A 21 C8 20 94 21 D9| GCO1:20 E4 FF FG FB C9 4E FG G6 | GE31:38 BO F3 68 GG G2 BG 88 AA
G909:B@ G3 26 8A 21 CB 26 96 AE| 8CG9:6B C9 59 DG F3 EA AQ GG EF | GE39:88 88 88 88 88 88 88 88 55
69E1:21 BO G3 26 8A 21 66 98 45] C11:8D 21 D@ 68 4c E2 FC GG 4G | GE41:88 88 88 88 88 88 88 88 5D
99E9:9D AG 21 E8 6G Bl FC C9 33] GC19:4C 32 22 AD BS 21 85 FE 57 | GE49:88 88 88 88 88 88 88 88 65
G9F1:87 FO 64 C9 2G DG G2 18 81] GC21:AD B9 21 85 FF AG 28 8C 5A | GE51:88 88 88 88 88 88 88 88 6D
G9F9:68 38 60 GG BG GB GO GB 56| GC29:BA 23 Bl FE 30 EA AQ 87 95 | GE59:88 88 88 88 88 88 88 88 75
GAG1:06 G6 G8 G6 BG GB BG ED G3 GE61:20 80 26 26 20 26 20 52 C7
GAG9:64 OD 65 2A G5 6B G5 D3 59 GE69:28 20 26 41 26 20 20 53 CA
GA11:65 11 86 Al G6 BE 67 O60 FF GE71:26 26 26 43 26 20 20 41 EO
GA19:A9 OG 8D BA 21 4C 72 23 Al GE79:26 26 26 4C 28 26 20 53 8B
GA21:A9 GG 8D 6D 21 4C 48 23 86 GE81:20 26 26 20 8G 26 88 88 D9
GA29:AD BA 21 D@ EB AD 6D 21 G6| 6C59:B8 21 38 E9 G1 85 FE AD 85 | GE89:28 26 29 26 26 20 20 26 AS
GA31:D@ EE 26 E4 FF F@ Fl C9 2D/ GC61:B9 21 E9 GB 85 FF AG GG 49 | GE91:20 26 26 42 19 26 42 GF CA
GA39:49 D@ G3 4C F6 21 C9 4A 65] BC69:A9 81 8D BA 23 Bl FE 36 22 | GE99:02 26 42 12 GF G4 B65 12 CC
93 4C FA 23 C9 4B D@ SF | GC71:5B AY 87 91 FE AO 26 C8 53 | GEA1:69 G3 GB 20 26 20 20 26 48
4C BE 23 C9 4C DG D8 F5| 6C79:91 FE AS FE 8D B8 21 AS FS | VEA9:26 26 26 20 20 26 88 88 FE
34 24 AD B8 21 38 E9 9C/ GC81:FF 8D B9 21 18 69 D4 85 pB | GEB1:88 88 88 88 88 88 88 88 CD
GA59:28 85 FE AD B9 21 E9 66 C3| GC89:FF 88 AO G4 91 FE 4C CB 26 | JEB9:88 88 88 88 88 88 88 88 D5
6A61:85 FF A9 A8 8D BA 23 AG 36 | GC91:21 AD BB 21 85 FE AD B9 Gc | GEC1:88 88 88 88 88 88 88 88 DD
GA69:60 Bl FE 36 22 AQ 87 91 25|6C99:21 85 FF AG G1 8C BA 23 8g | SEC9:88 88 88 88 88 88 88 88 ES
G-32. COMPUTE JULY 1993
GED1:88
GED9: 20
@EE1:23
GEE9: G3
GEF1:26
GEF9: 20
GFO1:20
GFO9:12
OF11:13
GF19:20
OF21:26
GF29:26
GF31:61
OF39:16
OF41:2¢0
GF49:26
OF51:26
GF59:62
GF61:12
GF69:20
GF71:26
GF79:4B
OF81:55
GF89:69
@F91:2D
GF99:4C
GFA1:89
OFA9:89
OFB1:89
GFB9:89
GFC1:89
@FC9:76
GFD1:46
GFD9:20
GOFE1:46
GFE9:4G
GFF1:6B
GFF9:6E
1601:26
1009:42
1611:65
1619:7D
1621:7D
1629: 48
1631:65
1639:26
1641:5A
1049:7E
1651:5A
1659:76
1061:24
1669:4E
1071:3E
1679:3C
1681:7D
1689:7D
1691:D5
1699:D0
16A1:C9
16A9:D9
16BL:Al
88
26
20
Ol
28
26
20
Ol
69
28
26
26
13
@5
28
26
26
OF
5
28
26
@5
10
07
44
2D
89
89
89
89
89
46
72
76
40
40
72
5D
6D
OF
12
6D
6D
46
3A
26
66
5A
TE
DS
3c 18
TE
18
3c
7D
7D
AG
cc
CE
CF
OG
88
26
52
20
29
20
26
44
20
29
26
26
13
26
29
20
26
43
26
29
26
26
4A
26
26
14
89
89
89
89
89
6E
46
46
46
89
73
46
G2
12
89
6D
26
54
38
Cr)
18
7E
18
18
gc
24
46
66
ao
C1)
c4
cl
AP
CF
oo
88
26
61
B7
26
26
20
@5
36
26
26
26
26
35
26
26
26
OF
26
26
26
49
2D
20
26
89
89
89
89
89
89
76
6E
46
40
89
6D
73
U9)
OF
89
4g
6D
69
20
18
18
66
18
18
GE
3E
3c
1lF
1F
bg
AE
C7
CE
CE
oo
26
26
13
20
26
20
43
GE
20
20
26
52
53
26
26
26
41
12
26
26
26
2D
52
4B
26
89
89
89
89
89
20
46
6E
46
46
26
46
5D
26
64
26
4g
71
@D
26
3c
3c
7E
3c
3c
4A
3A
24
23
23
CF
AG
cl
Cr)
Al
oo
85
FS
39
84
DE
16
42
6D
16
19
3E
79
45
86
41
67
98
8D
46
37
8F
E4
2B
3D
EB
26
BE
c7
CF
D7
76
El
6B
F3
FF
oF
B3
4D
D6
cc
3B
AA
33
CA
ac
E4
c4
6D
al
3E
BD
18
56
G4
9c
cé
39
88
87
aC
A2
Bob Broderick is a student at California
High School and has been program-
ming for about five years. He wrote Ras-
cals because he wanted a small ar-
cade-style game that he could play
with relative ease and few rules. He
lives in San Ramon, California.
SCUD
By William F. Snow
There has been a lot of discussion over
the past few years about how little peo-
ple know about world geography. For ex-
ample, do you know the names of all of
the countries in the Americas? Can you
at least venture a guess as to how many
there are in North, Central, and South
America? Give up? There are 35! Despite
its military-sounding name, Scud will
help you learn the names and capitals of
these 35 countries.
Entering the Program
Scud is an entertaining and fun way to
learn something about the countries of
the Americas. It's written entirely in BA-
SIC. To help avoid typing errors, enter
it with The Automatic Proofreader. See
“Typing Aids” elsewhere in this sec-
tion. Be sure to save a copy of the pro-
gram before you try to run it.
Playing Scud isn't difficult. Plug a
joystick into port 2 and then load and
run Scud. The opening screen will
give brief instructions for playing the
game. After a short pause, you will be
presented with the name of a country
and asked to choose the capital from
a list of three. If you choose incorrect-
ly, you are given the correct answer in
a special bulletin.
Defend the City
If you choose correctly, the city will be
displayed, sirens will wail, and missiles
will be launched at the city. It will then
be your responsibility to use your
Scud missiles to try to shoot down any
enemy rockets before they reach the
city. Use the joystick to aim your
Scud. A total of three missiles will be
launched from different positions dur-
ing each attack. If you shoot down all
three, you will have saved the city.
Modifications
Scud was written to help teach the
names and capitals of the countries of
the Americas. Since Scud is written en-
tirely in BASIC, it should be very easy
to modify the game so that the capitals
of any other group of countries or
states could be taught. The names of
the countries, followed by their capi-
tals, are in data statements in lines
1200-1300.
In order to modify the game,
change this data to whatever group
you wish to work with. Then, the follow-
ing code should be changed to reflect
the number of countries or states you
have entered into the data statements:
the dimension statements in line 40;
the FOR in line 80; the number of coun-
tries in lines 150, 160, 170 (the scram-
ble routine); and the end-of-game rou-
tine in line 200.
Scud is fun to play and will quickly
teach the names and capitals of the
couniries of the Americas to anyone
who wants to learn them.
SCUD
BH 1@ REM COPYRIGHT 1993 - COM
PUTE PUBLICATIONS - ALL
{SPACE}RIGHTS RESERVED
QD 26 REM BY WM. F. SNOW
GG 30 GOSsUB1d20
XJ 46 CLR:DIM Q$(35) ,A$(35) ,CO
$(35) ,CA$ (35) ,¥ (35) :V=53
248:SN=54272:POKESN+24,1
5
GS 50 POKE53280,7:POKE53281,7:
POKEV+31,9
QD 68 POKESN+4,0:PRINT" {CLR}
{8 DOWN} "SPC(14)"{BLU}PL
EASE WAIT":PRINT"
{3 DOWN}{3 SPACES}OUR SP
IES ARE";
CD 7@ PRINT" CHECKING ON THE E
NEMY"
DE 80 FOR QA=1T035:READQ$ (QA),
A$ (QA) :NEXT
BE 96 FOR S=12288 TO 12351:REA
DSP: POKES, SP:NEXT
AB 10@ FORS=12352TO 12415:READ
SP: POKES, SP:NEXT
QD 114 FORS=12416 TO 12479:REA
D SP:POKES,SP:NEXT
BM 126 FORS=12480T012543:READS
P:POKES,SP:NEXT
AK 136 FORS=12544 TO 12607:REA
D SP:POKES,SP:NEXT
JE 148 FORS=12608 TO 12671:REA
DSP: POKES, SP:NEXT
FM 159 FOR I=l TO 35
KC 168 X=INT(RND(.)*35)+1
FC 176 FOR CK=1 TO35:IF X=¥(CK
) THEN168
SM 18@ NEXTCK:Y (I) =X
BD 198 CO$(X)=Q$(I) :CA$(X) =AS (
I) :NEXTI
GS 266 SC=G:FORI=1T04:POKEV+tI,
@:NEXT: POKEV+21,@: P=P+1
:IF P>35THENP=35:GOTO11
4g
AS 216 POKE53280,13:POKE53281,
1
MD 220 JR=INT(RND(.)*10)+2
RC 230 PRINT"{CLR}{16 DOWN}
{4 SPACES}SCUDS HAVE BE
JULY 1993 COMPUTE G-33
PROGRAMS
PB
SF
BK
GJ
RF
MP
JD
HD
MX
SB
Gc
HG
XP
SG
FG
KG
CR
HX
AB
HC
G-34
249
256
266
276
280
296
3698
316
320
338
346
356
360
376
380
396
400
419
426
430
)446
450
466
476
486
EN LAUNCHED AT THE
PRINTSPC(9) "CAPITAL OF
{SPACE} {BLK}"COS (P)
PRINT: PRINTSPC(12)"
{BLU}SHOULD YOU GO TO"
Q=INT (RND(.)*10)+1:IF Q
=P THEN260
R=INT(RND(.)*10)+1:1E R
=P OR R=Q THEN276
POKE2640,192: POKEV+29,1
: POKEV+46,1
S=INT (RND(.)*3)+1:0N S
{SPACE}GOT0306,340, 380
PRINT: PRINTSPC (9) "{BLK}
A) {BLU}"CAS$(P) : PRINT: PR
INTSPC (9) "{BLK}B) {BLU}"
CA$ (Q)
PRINT: PRINTSPC (9) "{BLK}
C) {BLU} "CAS (R) : PRINTSPC
(9)"{3 DOWN} {CYN}HIT Q
{SPACE}TO END GAME"
GOSUB68G:IF BS="A"THEN4
20
GOSUB820:GOTO200
PRINT: PRINTSPC (9) "{BLK}
A) {BLU} "CAS (Q) PRINT: PR
INTSPC(9)"{BLK}B) {BLU}"
CAS (P)
PRINT: PRINTSPC (9) "{BLK}
C) {BLU} "CA$ (R) : PRINTSPC
(9)"{3 DOWN} {CYN}HIT Q
{SPACE}TO END GAME"
GOSUB68G:IF BS="B"THEN4
20
GOSUB820:GOT020
PRINT: PRINTSPC (9) "{BLK}
A) {BLU}"CA$(R) :PRINT:PR
INTSPC (9) "{BLK}B) {BLU}"
CAS (Q)
PRINT: PRINTSPC (9) "{BLK}
C) {BLU} "CAS (P) : PRINTSPC
(9)"{3 DOWN} {CYN}HIT Q
{SPACE}TO END GAME"
GOSUB680:IF BS="C"THEN4
20
GOSUB824:GOTO200
PRINT" {CLR}": POKE53280,
13: POKE53281,13
PRINT" {HOME} {18 DOWN}"S
PC (8) "{BLK}B":PRINTSPC (
7)"{PUR}NP(2 SPACES}
{RVS} {OFF}"
PRINT" {3 SPACES} {BLK}
{H}{A}IOP* OP": PRINT"
{4 SPACES) (PUR}OP{T}
{RVS} {OFF} {N}BP{@}NP"
PRINT"{3 SPACES} {BLK}O
{SPACE}{N} {RVS} {OFF}
{N}B{PUR}M M{N}":GOSUB1
126
POKEV+21,3:XA=75: YA=206
: POKE2041,194:POKEV+39,
11: POKEV+46,6
SC=SC+1:IFSC>3 THEN GOS
UB976:GOTO209
PS=INT(RND(.)*3)+1:0N P
S GOTO490,720,778
COMPUTE JULY 1993
490
500
516
526
536
548
556
566
576
586
596
606
616
620
636
646
650
666
676
680
690
708
716
726
736
740
756
768
776
780
799
800
81d
829
POKE2046,192: POKEV+39,1
1:X=60:XX=255:FORA=1T02
5:XX=XX-3: POKEV, XX
POKEV+1,X:GOSUB576
POKEV+2,XA: POKEV+3,YA:N
EXT
POKEV+30,9
POKE2046,193:FORA=1T056
:XX=XX-3:X=X+3: POKEV, XX
: POKEV+1,X:GOSUB576
IFFB=@ANDPEEK (V+3G) AND2
=2THEN GOSUB630:GOT0470
POKEV+2,XA: POKEV+3,YA:I
F (PEEK (V+31) AND1L) =1THEN
916
NEXT: GOTO206
JY=PEEK (56326) AND15:FB=
PEEK (56320) AND16:REM RE
AD STICK AND BUTTON
IFJY=7THENXA=XA+JR: IF X
A>25S5THEN XA=255
IFJY=1LLTHENXA=XA-JR: IFX
A<1 THEN XA=1
IFJY=1L3THENYA=YA+JR:1F
{SPACE}¥A>25@ THEN YA=2
58
IFJY=14THENYA=YA-JR:IF
{SPACE}YA<1 THEN YA=1
RETURN
POKE2046,195: POKEV+39,2
:GOSUB110@: POKEV+23,1:P
OKEV+29,1
FOREC=1T08: POKEV+39,EC:
FORDE=1T076:NEXT:NEXT:P
OKEV, 0: POKEV+1,6
POKEV+31,@:POKEV+23,0:R
ETURN
GET BS:IF BS="" THEN66G
RETURN
GET BS: IFBS=""THEN680
IF BS$="A"ORBS="C"ORBS="
B"THENRETURN
IF BS="Q"THEN1140
GOTO68¢
POKE2046,196:POKEV+39,1
1: POKEV, 60: FORVS=6T0209
STEP5:GOSUB57@
POKEV+1,VS: POKEV+38,0:P
OKEV+2,XA
POKEV+3, YA: IFFB=SANDPEE
K (V+36) AND2=2THENGOSUB6
38:GOT0476
IF (PEEK(V+31)AND1)=1 T
HEN916
NEXT: GOTO266
POKE2640,197: POKEV+39,1
1:POKEV, 255: POKEV+1, 220
FORX=255TOGSTEP-3:GOSUB
570: POKEV, X: POKEV+30,0
POKEV+2,XA: POKEV+3,YA:I
FFB=G@ANDPEEK (V+3@) AND2=
2THENGOSUB639:GOT0476
IF (PEEK(V+31)AND1)=1 T
HEN916
NEXT :GOTO208
PRINT"{CLR}{4 DOWN}
{6 RIGHT} {RED}OM {H}
DB
KR
FB
MA
cQ
RP
BA
xs
MP
AM
HR
836
846
85Q
860
870
889
896
986
916
926
9368
946
956
960
976
986
996
{N}{2 SPACES} {H}
{2 SPACES}{H}{2 SPACES}
OLY} {Y¥}P{2 Y} B {NPM
[2 SPACES} {H}"
PRINT"{6 RIGHT}LN {H}
{N}{2 SPACES} {H}
{2 SPACES}{H}{2 SPACES}
L{P}{2 SPACES}{N}
{3 SPACES}B {N} M {H}"
PRINT"{6 RIGHT}{H}M {H}
{N}{2 SPACES}{H}
{2 SPACES}{H}{2 SPACES}
{H}{3 SPACES}{N}
{3 SPACES}B {N}
{2 SPACES}M{H}"
PRINT"{6 RIGHT}LN M{P}N
{2 SPACES}L{P} LtP} L
{P}{2 SPACES} {N}
{3 SPACES}B {N}
{3 SPACES}{H}"
PRINT "{3 DOWN} {BLK}"SP
C(4)CAS$(P) :PRINT" {BLU}
{SPACE}THE CAPITAL OF
{BLK}":PRINTSPC (4) COS (P
)
PRINT"{BLU}{2 SPACES}HA
S BEEN DESTROYED ";
PRINT"BY SCUD MISSLES.
{3 SPACES}THE PERSON WH
O COULD HAVE SAVED THE
{SPACE}CITYDID";
PRINT" NOT HAVE ENOUGH
{SPACE}INFORMATION TO G
ET{2 SPACES}TO THE RIGH
T CITY IN TIME."
PRINT"{3 DOWN}{8 RIGHT}
{6}HIT ANY KEY TO CONTI
NUE{BLU}":GOSUB669:RETU
RN
POKEV+21,6: PRINT" {HOME}
{26 DOWN}"SPC(4)"{RED}M
{F}{5 SPACES}N N":GOSU
B11l00
PRINTSPC(4)"N M
{4 SPACES}N NNM N"
PRINTSPC(3)"TM M{Q}IBBN
{+}P{2 £}Q":POKESN+4,@
FORDE=1 T0500:NEXT:FORC
L=1704T01903:POKECL, 32:
NEXT
PRINTSPC (3) "{UP} {BLK}
{D}{O} {K}{L}{2 IPRER}
LEf}@L+}47}":FORDE=1T
O1G00:NEXT
POKEV, 0: POKEV+1,0: POKEV
+31,9:GOT0206
POKEV+21,0
PRINT"{CLR}{5 DOWN}
{4 RIGHT} {BLK}THANK YOU
1!":PRINT: PRINT" {BLU} YO
UR KNOWLEDGE AND MARKSM
ANSHIP";
PRINT" HAVE{4 SPACES}SA
VED{BLK}": PRINT: PRINTCA
$(P):PRINT: PRINT" {BLU}T
HE CAPITAL OF{BLK}"
1969 PRINT:PRINT COS(P):PRI
DB
JA
PG
QA
JD
KM
KG
RP
DF
KG
CE
PD
car
QD
SG
AA
1619
1626
1636
1946
1656
1669
1679
1686
1696
1169
1119
1126
1136
11496
1156
1166
1179
1180
1196
12396
NT" {BLU}"
PRINT"(5 DOWN} {WHT}HIT
ANY KEY TO CONTINUE
{BLU}":GOSUB666:SS=SS+
1:RETURN
POKE53280,16: POKE53281
710
PRINT" {CLR}{3 DOWN}
{BLK}"SPC(12)"N{2 T}
{2 SPACES}N{2 T}
{2 SPACES}{G} {M}
{2 SPACES}OM": PRINTSPC
(12) "M¢@>{3 SPACES} {G}
{4 SPACES}{G} {M+
{2 SPACES}{G}{M}"
PRINTSPC(14)"M
{2 SPACES}{G}
{4 SPACES}{G} {M>
{2 SPACES}{G}{M}":PRIN
TSPC(12)"{2 @}N
{2 SPACES}M{2 @}
{2 SPACES}M{@}N
{2 SPACES}LN"
PRINT"{3 DOWN} {BLU}
{3 SPACES}THE ENEMY IS
LAUNCHING SCUD MISSIL
ES AT NATIONAL CAPITAL
Ss";
PRINT" IN THE AMERICAS
-{3 SPACES}YOUR JOB IS
TO GET TO THE CAPITAL
UNDER ATTACK";
PRINT" AND DESTROY
MISSILES. USE A
{2 SPACES} JOYSTICK
{SPACE}PORT TWO,";
PRINT" BUT BE CAREFUL,
{3 SPACES}EQUIPMENT IN
DIFFERENT CITIES DOES
NOT ";
PRINT" ALWAYS RESPOND
{SPACE}WITH THE SAME S
PEED.":GOSUB9@@: RETURN
POKESN+4,129:POKESN+5,
92:POKESN+1,1:POKESN,1
00: FORF=1T0999:NEXT: PO
KESN+4,@
RETURN
POKESN+14,5:POKESN+13,
16: POKESN+3,1:POKESN+6
7240: POKESN+4,65
POKESN, 240: POKESN+1, 26
: POKEV+30,@: RETURN
PRINT" {CLR}{5 DOWN}
{7 RIGHT}YOU SAVED "SS
" OUT OF THE "P
PRINT:PRINT"{8 RIGHT}C
ITIES THAT WERE ATTACK
ED"
PRINT"{5 DOWN}
{5 RIGHT}WOULD YOU LIK
E TO TRY AGAIN (¥/N)":
GOSUB66G
IF BS="N"THEN END
IFBS="Y"THEN RUN 49
GOTO114¢
DATAANTIGUA & BARBUDA,
THE
IN
EK
PB
FS
xc
KG
HJ
BP
KE
FS
FE
GG
EB
SG
CJ
FR
PX
1216
1226
1236
Tae
1256
1266
1276
1286
1299
1366
1316
1329
1336
134
1356
1366
1376
ST. JOHNS,BAHAMAS,NASS
AU,BELIZE,BELMOPAN
DATACANADA, OTTAWA, COST
A RICA,SAN JOSE,CUBA,H
AVANA , DOMINICA, ROSEAU
DATADOMINICAN REPUBLIC
,SANTO DOMINGO,EL SALV
ADOR,SAN SALVADOR,GREN
ADA
DATAST. GEORGE'S,GUATE
MALA, GUATEMALA, HAITI, P
ORT-AU-PRINCE , HONDURAS
DATATEGUCIGALPA, JAMAIC
A, KINGSTON , MEXICO ,MEXI
CO CITY,NICARAGUA,MANA
GUA
DATAPANAMA, PANAMA CITY
,SAINT LUCIA,CASTRIES,
SAINT VINCENT & THE GR
ENADINES
DATAKINGSTOWN, TRINIDAD
& TOBAGO,PORT OF SPAI
N,UNITED STATES, WASHIN
GTON D.C.
DATAARGENTINA,BUENOS A
IRES,BOLIVIA,LA PAZ,BR
AZIL,BRASILIA,CHILE,SA
NTIAGO
DATACOLOMBIA, BOGOTA, EC
UADOR , QUITO, GUYANA, GEO
RGETOWN, PARAGUAY, ASUNC
ION
DATAPERU, LIMA, SURINAME
, PARAMARIBO , URUGUAY , MO
NTIVIDEO, VENEZUELA,CAR
ACAS
DATABARBADOS , BRIDGETOW
N,ST. KITTS & NEVIS,BA
SSETERRE
DATAGGG, 000,000 ,000,00
@,800,009,000,000,000,
666,080,000,000,000,00
6,000
DATAGS1,009,000,003,09
G,060,067,000,624,015,
960,194,127,906,143,25
5,060
DATA143,255,000,104,12
7,900,024,015,000,090,
807,080,000,003,000,00
8,001
DATAGGG,G00,000,000,08
6,000,900,000,000,090,
888,650,000,000,000,00
6,008
DATAGGG , 600,000 ,000,00
0, 000,900,000,000,000,
G86 ,090,000,000,004,00
8,000
DATAGG6, G00, 000,007,900
G,060,907,128,000,007,
192,986,007,224,000,00
7,246
DATAGGG, 007,248, 000,00
7,252,966,615,254,006,
628,099,668,120,660,99
0,144
RF 1389 DATAGGG, 006,144, 000,00
6,224,000,000,000,000,
665 ,000,006,000,000,00
6,000
DATAGGG,GG0,005,000,00
6,000,000,900,500,600,
800 ,008,000,006, 008,00
6,960
DATAGG8, G00, 009,008,00
8,090,255,128,600,908,
040,006,008,000,906,08
8,000
DATAGOG, G08, 000,000,008
8,000,006,060,900,000,
040 ,000,000,000,000,05
8,090
DATAGGG,GG5,660,005,00
G,600,432,008,008,032,
632,004, 032,090,000,63
2,000
DATAGG1,602,008,008,13
2,000,900,072,000,128,
648,000,064,126,902,09
2,252
DATA248,128,120,002,0
6,048,060,080,672,000,
600,132,006,001, 402,00
6,000
DATAG16,G00,000,016,00
6,068,016,032,616,016,
@32,096,008,060,909,00
6,000
DATAGGG,GG3,255,128,00
1,215,000,800,214,006,
606,124,600,000,056,00
8,000
DATAG40,600,000,040,00
6,090,040,000,000,046,
690 ,000,040,008,000,04
6,008
DATAGGG,049,008,000,04
6,000,060,040,000,000,
656 ,006,000,016,006,00
9,016
DATAGGG,GG0,016,806,00
6,009, 060,606,000,008,
69G,000,006,000,006,08
6,008
DATAGGG, 690,000, 008,00
6, G0,000,000,009,000,
640,000,000, 050,000,00
8,080
DATAGG3,606,600,007,00
@,000,025,015,255,241,
600 ,000,025,098,000,06
7,008
DATAGOG,003,000,000,00
0 ,000,960,000,000,00G,
99G,905,900,008, 006,06
6, G00
DATAGGO, 600,008, 000,00
0, G00,000,000,000,000
KK 1398
GK 1469
Ac 1416
MA 1429
KF 14306
FH 1449
Cs 1456
BK 1466
RR 1476
EC 1486
QP 1499
BA 1569
FK 1516
JE 1526
PD 1538
William Snow, a teacher for more than
27 years, is vice president of the
McHenry County Commodore Comput-
er Club in McHenry, Illinois.
JULY 1993 COMPUTE G-35
PROGRAMS
CRYPTARITHM SOLVER
By David Pankhurst
When | first bought my Commodore, |
used it often to solve math problems. |
liked the brute-force approach the com-
puter allowed. |’d just have a series of
FOR-NEXT loops go through the possible
answers until a solution would appear.
That was fine most of the time, but even-
tually | came across a type of math prob-
lem the computer couldn't help me with,
the cryptarithm. You've no doubt seen
this type of problem before.
HELP
+ THE
YOUNG
Each letter represents a different digit,
0-9. In this example, there are ten dif-
ferent letters, so all ten digits are
used. The words HELP and THE each
make numbers that, when added to-
gether, match the result in YOUNG.
There are no restrictions, except that 0
can't be the first digit in any number.
Clearly, this isn't a simple loop prob-
lem. Let's say the H above was as-
signed 1; the E, 2; the L, 3; and so on
throughout the puzzle. A sample addi-
tion could then be tried, and the result
checked.
So how many times does this need
to be done? To completely check the
puzzle, H has to be tried out for each
of the 9 digits (leaving out 0), E by
each of the remaining 9, the L by the
remaining 8, and so on. This gives ap-
proximately 9x 9x 8x 7x 6x 5x
4x 3x 2x 1 choices, or 3,265,920 dif-
ferent combinations. That's a lot of
loops in BASIC! If the 64 managed one
calculation per second, it would take
more than 35 days to complete.
To the Rescue
Enter machine language. Cryptarithm
Solver brings ML brute force to these
puzzles. In a matter of hours, it can
solve most cryptarithms. A puzzle is
first broken up into combinations, and
the computer tries different substitu-
tions for each letter.
if the result is correct (totals on both
sides of the equal sign match) the puz-
zle is solved. The program then goes
on to see if there are other solutions.
G-36 COMPUTE JULY 1993
Typing It In
Cryptarithm Solver is written in BASIC,
but it pokes machine language rou-
tines into memory to speed calcula-
tions. To help avoid typing errors, en-
ter the program with The Automatic
Proofreader; see “Typing Aids" else-
where in this section. Be sure to save
a copy of the program before you try to
run it.
Solving Equations
When you run Cryptarithm Solver, the
program will prompt you for a puzzle.
To solve the above problem, enter it in
the following format. (You may use low-
ercase letters.)
HELP+THE=YOUNG
After you press Return, the program
displays a constantly changing sum in
the bottom of the screen. This is a win-
dow into the processing of the pro-
gram. The display is the test result pro-
duced by each combination. Usually,
the result is wrong, and the next com-
bination is then tried. However, when
the result is true, the solution is dis-
played, along with the time it took to
find. Processing then continues with
the next combination.
No Key Words
You need to watch out for one thing
when you're preparing input for Cryp-
tarithm Solver. If you typed SEND +
MORE = MONEY, the program would
display an error message informing
you that the words contained an em-
bedded BASIC function or command.
This is because the BASIC commands
END, OR, and ON are embedded in
the formula, and the computer tries to
encode these as commands. To avoid
this problem, insert spaces between
the letters. SEND+MORE=MO
N E Y would work fine.
Cryptarithm Solver works well with all
sorts of mathematical operations, not
just addition. One example is the follow-
ing multiplication.
ABCDE*9=FGHIS
Entering it this way fixes the 9; only let-
ters are changed in the puzzle. By the
way, there are two solutions to this puz-
zle. As with other computer math opera-
tions, be sure to enter an asterisk for
multiplication.
Cryptarithm Solver works at ML
speeds, but even that isn't fast enough
for instantaneous results. Depending
on the formula, the program can per-
form as many as 60 tests a second, so
it would still take half a day to solve
some puzzles.
Even Faster
One way to shorten the time is to put
the result first on the line. As an exam-
ple, look at MONEY=SEND+MORE.
Cryptarithm Solver starts by assigning
1 to M; usually, that is the correct digit
for the first place in the sum. So, you
can save testing for the other eight dig-
its, and this can mean solving most puz-
zles in less than an hour. The exam-
ples here ranged from 40 seconds to
three hours, using these tips.
Other Languages
Cryptarithm Solver is not restricted to
English. It also works in French.
ELEVE+LECON=DEVOIR
This translates loosely to become STU-
DENT+LESSONS=HOMEWORK. If we
entered the words into Cryptarithm
Solver as ELEVE+LECON=DEVOIR,
the D (which logically is 1), would be as-
signed 7, and it would have to go
through the whole cycle to solve. By re-
versing the order, D is assigned 1 im-
mediately, and the solution is that
much quicker. It took me 64 minutes.
(I'll give you this one. The answer is
69656 + 96078 = 165734.)
When the program finds a solution,
leave it running to search for other an-
swers. When all reasonable solutions
have been tried, however, you'll want
to stop it. To quit, hold down the Q
key. You'll be asked if you wish to con-
tinue. Press Y to continue or N to stop.
To slow the action, hold down the Ctrl
key. But be warned; the solutions take
much longer.
| hope you enjoy Cryptarithm
Solver, yet one more way the brute-
force methods of computing can yield
practical results and eliminate all that
difficult thinking for us humans. To end,
here are two more puzzles:
PETER+PETER+PETER+PETER=REPEAT
MARS+VENUS+SATURN+URANUS=NEPTUNE
CRYPTARITHM SOLVER
PH 166 REM COPYRIGHT 1993 - CO
RH
XK
AQ
BX
RE
XB
EM
AR
sD
MS
EB
sc
PP
DK
QH
165
116
126
139
146
156
166
176
174
176
178
184
199
280
216
226
236
246
256
266
276
286
296
306
316
326
3390
MPUTE PUBLICATIONS INTL
LTD - ALL RIGHTS RESER
VED
POKE 53286,0:POKE 53281
,@:PRINT" {CLR} {YEL} {H}
{n}"
PRINT"{8 SPACES}CRYPTAR
ITHMS{2 SPACES}SOLVER
PRINT"{11 SPACES}BY D.P
ANKHURST Tanah
PRINT
INPUT "CODE STRING";XS$
DIM L(2@) :L=6:GOSUB356:
PP=P:¥$="1823456789"
FOR I=1 TO LEN(Y$) :POKE
C-1+I,ASC (MIDS (Y¥$,1,1
) :NEXT: POKE CM,LEN (YS) -
1
FOR I=l TO LEN(X$) :POKE
511+1,ASC (MIDS (X$,I,1)
) :NEXT:POKE I,@:SYS 491
55
FOR J=1 TO I-l:IF PEEK(
511+J)THEN 178
PRINT" {RVS} EMBEDDED BA
SIC FUNCTION OR COMMAND
~{OFF}":END
NEXT: Y=1
IF PEEK(511+Y)<>@ THEN
{SPACE}¥=Y+1:GOTO 186
FOR K=l TO Y¥-1:C=PEEK(5
11+K) :CS=CHRS$(C):IF CS<
"A" OR C$>"Z" THEN25G
IF L=@ THEN236
Y=-1:FOR I=@ TO L-l:1F
{SPACE}L(I)=C THEN Y=I
NEXT:IF Y<>-1 THEN24G
L(L) =C:Y=L:L=L+l
POKE PP,K:POKE PP+1,¥:P
P=PP+2
NEXT:POKE PC,PP-P:FOR I
=@ TO L-1:POKE X+I,I:NE
XT:POKE MX,L-1
PRINT" {CLR}"; :F=0
PRINT" {HOME}{24 DOWN} "
X$;:SYS 49152
POKE 198,0:Y=PEEK(781
IF y=255 AND F=@ THEN P
RINT: PRINT" {UP}{RVS} SO
RRY-NO MATCH {OFF}":GOT
0346
IF Y=255 THEN PRINT: PRI
NT"{UP}{RVS} END OF LIS
TS {OFF}":GOTO34G
IF Y¥<>1 THEN336
F=F+1:PRINT"{2 SPACES}"
INT (TI/6) /16"SECONDS";:
PRINT: PRINT" "X$;:SYS 4
9158:GOTO28¢
IF Y=9 THEN PRINT"
{2 SPACES}CONTINUE?"; :W
AIT 198,255:GET YS:IF Y
EF
DD
RC
DR
RS
HQ
KA
HP
AQ
FC
SH
SE
FK
XH
KR
ER
FB
JD
KM
JE
PA
HE
sc
HB
RS
HQ
JJ
HD
346
359
368
376
466
410
426
436
446
456
466
476
486
490
566
516
526
536
546
556
566
576
586
596
666
619
626
636
$="Y"THEN27@
PRINT:PRINT" FINISHED A
T"INT(TI/6)/1@ "SECONDS
"SEND
TIS="9660G6":DS=1984:1F
PEEK (44)<>18 THEN GOSU
B 466
DX=56432:NX=DX+1:MX=NX+
1:X=MX+1:T=X+80:CM=T+86
:C=CM+1:PC=C+8G:P=PC+1:
R=P+80
RETURN
RESTORE:FOR I=@ TO-1 ST
EP-1:READ Y$:I=VAL(Y$)=
-1L:NEXT:X= 49152:DATA -
1
READ Y:IF Y<>-2 THEN PO
KE X,¥:X=X+1:GOTO 416
RETURN
DATA{2 SPACES}24,144, 3
G6, 76,{2 SPACES}9,192,
{SPACE}56
DATA 176,
2,165,123
DATA{2 SPACES}72,169,
{2 SPACES}2,133,123,169
,{2 SPACES}@
DATA 133,122,
5,104,133
DATA 123,104,133,122, 9
6,173,{2 SPACES}2
DATA 197,141,{2 SPACES}
G,197,165,122, 72
DATA 165,123, 72,176,
{2 SPACES}6, 32, 63
DATA 192, 76, 56,192, 3
2,137,192
DATA 1064,133,123,104,13
3,122, 96
DATA 174,244,197,142, 6
9,198,206
DATA{2 SPACES}69,198,17
4, 69,198,188,245
DATA 197,196,{2 SPACES}
3,197,189,164,197
DATA 206, 69,198,174, 6
9,198, 48
DATA{2 SPACES}15,188,24
5,197,153,192,
{2 SPACES}7
DATA 153,255,{2 SPACES}
1,174, 69,198, 76
DATA{2 SPACES}69,192,16
9,255,162,{2 SPACES}1,1
33
DATA 122,134,123,
5,{2 SPACES}@, 32
DATA 158,173,165,
G,{2 SPACES}3,162
DATA{3 SPACES}1, 96,165
7,197,261, 62,208
DATA{3 SPACES}3,162,
{2 SPACES}@, 96,173,141
,{2 SPACES}2
DATA 201,{2 SPACES}4,20
8, 17,169,{2 SPACES}5,1
6G
24,165,122, 7
32,124,16
32,11
97,24
DS
KC
XM
HQ
AD
Js
AX
JM
HB
KQ
RP
QQ
RX
QF
RF
HM
EM
XK
648
656
669
679
685
698
796
716
726
736
746
756
768
776
786
796
806
816
DATA 255,162,255,262,20
8,253,136
DATA 208,248,176,202,13
8,208,241
DATA 174,{2 SPACES}@,19
7,188,{2 SPACES}3,197,2
86
DATA 140,{2 SPACES}1,19
7,174,163,197,169
DATA{3 SPACES}6,157, 83
7,197,262, 16,256
DATA 174,{2 SPACES}6,19
7,169,255,202, 48
DATA{3 SPACES}9,188,
{2 SPACES}3,197,153, 83
7197
DATA 202, 16,247,173,
{2 SPACES}1,197,295
DATA 163,197,246,
{2 SPACES}2,176, 48,172
DATA{3 SPACES}1,197,185
+ 83,197,208, 12
DATA 174,{2 SPACES}6,19
7,173,{2 SPACES}1,197,1
57
DATA{3 SPACES}3,197, 76
1235,192,238,{2 SPACES}
a
DATA 197, 76,199,192,17
3,{2 SPACES}@,197
DATA 205,{2 SPACES}2,19
7,208,{2 SPACES}3, 76,
{SPACE}63
DATA 192,238,{2 SPACES}
G,197,169,{2 SPACES}@,1
41
DATA{3 SPACES}1,197, 76
7171,192,206,{2 SPACES}
6
DATA 197, 16,155,162,25
5, 96
DATA -2
David Pankhurst, the author of the
Calc II spreadsheet, lives in Montreal,
Quebec, Canada.
FLASHER 64
By Henry Sopko
Focus attention to where you want it on-
screen with Flasher 64. You can make
words or graphic characters flash, scroll
the screen while they flash, and have as
many characters flashing as you want.
Flasher 64 is a short machine lan-
guage program. To enter it, use MLX, our
machine language entry program. See
“Typing Aids" elsewhere in this section.
When MLX prompts, respond with the fol-
lowing addresses.
Starting address: CCOO
Ending address: CDF7
JULY 1993 COMPUTE G-37
PROGRAMS
Be sure to save a copy of the program
before you exit MLX.
With just two commands, you can
make a word or a graphic character
flash anywhere on the screen. As with
the 128 in 80 columns, you can use
the command CHR&$(15) to turn on the
flashing and use CHR$(143) to turn it
off. All characters can be made to
flash with the exception of characters
254 and 255. These two characters are
used in a special way in the program.
However, they can be used in the non-
flashing mode.
You can also use your own custom
characters as long as the screen mem-
ory stays at $0400 (default). Flasher 64
commands can be entered in both di-
rect and program modes. Since Flash-
er runs in the background using the
IRQ routine, your BASIC or machine lan-
guage programs will continue to exe-
cute as normal without slowing down. |
How It Works
A second screen was necessary to ac-
complish this flashing technique. The
second screen, located at $C800, is
filled with the byte value of $FF. Then,
when the command CHR&%(15) is
used, the character(s) are redirected to
the second screen. The command
CHR$(143) or a carriage return will can-
cel the printing of the character(s) to
the second screen and resume print-
ing them to the main screen. While
this is happening, the IRQ routine is
scanning for characters on the second
screen. Any character other than 255
will be printed to the main screen locat-
ed at $0400 (1024).
Two phases are required to make
characters flash. The first phase puts
the characters on the screen, while the
second fills them with blank spaces giv-
ing the effect of flashing characters.
Also, it was necessary to copy the
BASIC ROM and the Kernal ROM to
the underlying RAM to support the
scrolling of the flashing characters. A
few changes were made to the Kernal
so that the two screens would be in
sync with each other when the screen
is scrolled.
To use Flasher 64 in your program,
you must first execute the program
with SYS 52224. Do this only at the be-
ginning of your program. After you
have issued this SYS command, use
G-38 COMPUTE JULY 1993
the commands CHR$(15) and
CHRS$(143) to turn on and off the flash-
ing sequence.
For example, after you've entered
the SYS command, enter the following
line in immediate mode.
PRINTCHRS(15)‘'FLASH ON” CHR$(143)
“FLASH OFF”
It's also possible to turn off all or
just part of a flashing word. Simply
send the character 255 to the second
screen in the area that you wish to
have the flashing stopped. In order to
send the character 255, you must first
use the PRINTCHR$(15) and then in
quotes press the Ctrl-Rvs keys simulta-
neously. While you're still in quote
mode, hold down the Commodore logo
key along with the B key. This produc-
es a character value of 255.
A Demonstration
For a demonstration of how these com-
mands are used, enter the demo pro-
gram and study its commands. The
demo is written in BASIC. To help you
avoid typing errors, enter it with The Au-
tomatic Proofreader. Again, see ‘“Typ-
ing Aids.” Since the demo loads and
runs Flasher 64, make sure both pro-
grams are on the same disk. After
you've studied the demo, you should
easily be able to use Flasher 64 in
your own programs.
Some cartridges may interfere with
Flasher 64. To use the program with Su-
per SnapShot v5, use the cartridge’s
>Q command to quit the wedge since
Flasher 64 changes the IBSOUT vec-
tors to point to its own routine. This prob-
lem occurs only in the direct mode.
FLASHER 64
CCGG:2G B6 CD A2 75 86 Gl 26 23
CC@8:96 CC AJ 26 78 A2 C6 AG D3
CC16:CC 8E 14 63 8C 15 63 58 7D
CC18:A2 @@ 86 92 A2 26 AG CC BB
26 @3 8C 27 G3 BE 94 AA
AE 95 CC FG G6 20 7B AE
26 6G CC C9 93 FG 22 Bl
GF DG 63 26 66 CC C9 AA
DG 63 26 7B CC C9 GD E7
GA AE 88 62 EG G8 90 SF
CC56:93 26 7B CC AE 94 CC 4C 5D
CC58:CA Fl 26 96 CC 4C 38 CC 16
CC68:8D 91 CC A5 D2 8D 92 CC D7
3 69 C4 85 D2 AQ C8 8D B5
62 AQ $1 8D 95 CC AD 1E
CC78:91 CC 68 8D 91 CC AD 92 AG
CC8G:CC 85 D2 AY G4 8D 88 G2 4G
CC88:A9 86 8D 95 CC AD 91 CC OF
CC96:66 GB BB GB GB BB BE 91 G9
Cc98:CC 8C 92 CC A2 BG AD FF 43
CCAG:A2 GG AG C8 86 FB 84 FC 56
CCA8:AG OG 91 FB C8 CO 6B DG IE
CCB@:F9 E8 EG G4 FO G5 E6 FC 44
CCB8:4C AA CC A9 FE 8D E8 CB 23
CCCG:A9 93 AE 91 CC 68 G8 48 43
CCC8:8A 48 98 48 E6 G2 A6 G2 DF
CCDG:EG 14 FG G3 4C 21 CD A2 53
CCD8:96 86 G2 A2 6G AG C8 86 19
CCEG:FB 84 FC A2 6G AG G4 86 74
FE AG 69 Bl FB C9 15
28 C9 FF DG G8 CB 64
F@ 18 4C ED CC A6 EC
@1 FG GA 91 FD C8 A7
CD@8:CG 8G FB G8 4C ED CC AY FF
CD16:20 4C 65 CD E6 FC E6 FE 44
CD18:4C ED CC A5 92 49 61 85 BA
CD20:92 68 A8 68 AA 68 28 4C 4E
CD28:31 EA A9 C8 AG 28 8D 46 DF
CD36:CD 8C 45 CD A9 C8 AG GD GD
3 CD 8C 4C CD A2 6G 4F
84 FE B9 6G 6G C9 44
28 99 6G 8G CB CO 9G
Fl 18 AD 45 CD 69 7B
CD58:28 B@ 25 8D 45 CD 18 AD FO
CD66:4C CD 69 28 B® 27 8D 4C CE
CD68:CD A@ OG A6 FE E6 FE E@ EF
CD76:1A D@ Dl AG BG AD FF 99 D1
CD78:C@ CB C8 CO 28 DG F8 6G 63
CD86:8D 45 CD EE 46 CD E6 FE 13
4C 5E CD 8D 4C CD EE
CD E6 FE A® GB 4C ES
78 8E 91 CC A2 64 CA
@2 AE 91 CC 4C C8 Fl
CDA8:E9 8E 91 CC 26 2A CD AE CF
CDB@:91 CC 58 4C FF E9 AG GB G1
CDB8:84 92 A2 AG 84 FB 86 FC 93
CDCG:A2 @@ Bl FB 91 FB C8 D@ 82
E@ 26 FO G5 E6 FC 26
CD E6 62 A5 @2 C9 DF
@7 A2 E@ 86 FC 4C 24
CDEG:C@ CD A2 9A AG CD 8E GF B6
CDE8:E9 8C 18 E9 A2 AY AG CD 48
CDF@:8E 14 E9 8C 15 E9 66 OG EF
FLASHER DEMO
HG 5 REM COPYRIGHT 1993 - COMP
UTE PUBLICATIONS - ALL RI
GHTS RESERVED
REM FLASHER 64 DEMO
POKE5328G ,G:POKE53281,0
IFL=@THENL=1:LOAD"FLASHE
R 64.ML",8,1
SYS52224:REM TURN ON FLA
SHER 64
PRINTCHRS (147) ;:REM CLEA
RS SCREENS
PRINT"{1l SPACES} {RVS}
{YEL}DEMO OF FLASHER 64"
PRINT
PRINT" {WHT}USE THE COMMA
ND: {RED}PRINTCHRS(15
{2 SPACES}TO TURN ON FLA
SHING"
KR 108 PRINT" {RVS}{CYN}EG:
PR
KE
QA
DH
BS
EF
KS
KB
AP
cP
RB
cs
CM
KJ
CE
EK
EK
BD
CG
BE
MH
MK
QxX
CG
HK
GF
116
126
136
146
156
166
176
186
199
266
216
226
238
240
256
266
276
286
296
306
310
328
336
346
359
366
{OFF}{2 SPACES}PRINTCHR
$ (15) "CHRS$ (34) "FLASHER
{SPACE}NOW ON"CHRS (34)
PRINTCHRS$ (15) "FLASHER N
OW ON":REM COMMAND TO T
URN ON FLASHING
FORD=1T06006:NEXT
PRINT: PRINT" {WHT}USE TH
E COMMAND: {RED}PRINTCH
R$(143){2 SPACES}TO TUR
N OFF FLASHING."
PRINT" {RVS} {CYN}EG:
{OFF}{2 SPACES}PRINTCHR
$ (15) "CHR$(34) "FLASH ON
"CHRS (34) "CHRS$ (143) "CHR
$(34);
PRINT" FLASH OFE"CHRS (3
4)"
PRINTCHR$(15) "FLASH ON"
CHRS(143)" FLASH OFF"
FORD=1T06000:NEXT:REM D
ELAY LOOP
PRINT: PRINT" {WHT}USE TH
E COMMAND: {RED}PRINTCH
R$ (15) "CHRS$ (34) "{RVS}
{7 B}"CHRS (34);
PRINT"TO TURN OFF A FLA
SHING WORD."
PRINT: PRINT" {RVS} (CYN}E
G:{OFF}{2 SPACES}PRINTC
HRS (15) "CHR$ (34) "FLASH
{SPACE}ON"CHRS$ (34) : PRIN
T
PRINTCHRS$ (15) "FLASH ON"
FORD=1T03000:NEXT:REM D
ELAY LOOP
PRINT: PRINT" {CYN} {RVS}E
G:{OFF}{2 SPACES}PRINTC
HR$ (15) "CHRS (34) "{RVS}
{7 B}"CHRS (34);
PRINT"TO TURN OFF A FLA
SHING WORD."
REM IFPEEK (146) <>1THENL
406:PEEK THIS LOCATION F
OR ON OR OFF CYCLE
REM IF PEEK(146)=1 THEN
CHARACTERS ARE ON SCRE
EN
REM IF PEEK(146)=0 THEN
CHARACTERS ARE OFF SCR
EEN
IFPEEK (146) <>1THEN25@:R
EM
PRINT"{4 UP}";:REM MOVE
UP TO WORD
PRINTCHRS (15) "{RVS}
{8 Bp"
FORD=1T06660:NEXT:REM D
ELAY LOOP
PRINT: PRINT: PRINT
PRINT"SCROLL FLASHING C
HARACTERS OFF SCREEN"
FORX=1T024:FORD=1T025:N
EXTD: PRINT: NEXTX
PRINT" {WHT }***k keke RAT
CHR$(15)" {PUR} {RVS}THA
TS ALL FOLKS!{OFF} "CHR
$ (143) "(WHT } t** ee RR RR
{Cyn}"
Henry Sopko lives in Hamilton, Ontar-
jo, Canada.
TYPE-SIM
By Donald G. Klich
This program was designed to let you
use your 64 or 128 as a typewriter for fill-
ing in the blanks on preprinted forms, ad-
dressing envelopes, typing labels, and
other such tasks. Preprinted forms are
usually designed with vertical spacing of
six lines to the inch, the same as most
printers. Therefore Type-Sim allows you
to set your printer on the first entry line
and move down the form as necessary.
With Type-Sim you can set a left or right
margin to orient your entries.
Typing It In
The program is written in BASIC 2.0
and will run on either the 64 or 128.
Use The Automatic Proofreader to
avoid typing errors. See “Typing Aids”
elsewhere in this section. Be sure to
save your program before using it. To
take advantage of Type-Sim's upper-
and lowercase printing, be sure your
printer is in the ASCII conversion
mode or an equivalent mode.
Operation Menu
When you run Type-Sim, you'll see a
menu that offers four data-entry oper-
ations (options) and an exit option. Op-
tion 1 allows you to set up a form in the
printer so that your text will print in the
desired location. You must first supply
a column position, perhaps along the
edge of the form, where you can test-
print an X. When the X prints, the com-
puter sends a backspace and a re-
verse linefeed. You should adjust the
form to make sure the printing is in the
desired location. You can repeat the op-
tion by pressing the space bar. When
the form is correctly positioned, press
Return to go back to the menu.
Option 2 allows you to select wheth-
er the following entries will be left (L) or
right (R) justified, For instance, a busi-
ness address would be left oriented
while entries on an income tax form
would be right oriented. See the next
option for setting margin settings.
Option 3 is where you enter your
text. Before you start, however, you
must indicate the left or right margin set-
ting from which your entries will print.
The program will pack data to the
right of a left margin or immediately to
the left of a right margin.
After you've entered the margin set-
ting for this particular entry and
pressed Return, you'll be prompted to
enter the phrase or line of text to be
printed. Press Return to print. If you
need linefeeds to move the print
head, you'll have that option after you
print each entry. To return to the menu,
press the up-arrow (T) key.
Option 4 permits you to select any
additional linefeeds you may require to
move down the form.
Option 5 exits the program.
TYPE-SIM
HH 1@ REM COPYRIGHT 1993 COMPU
TE PUBLICATIONS INTL LTD
- ALL RIGHTS RESERVED
REM TYPEWRITER SIMULATOR
POKE53281,0:POKE53283,0:
OPEN1, 4: PRINT" {CLR} "SPC (
8)"{2 DOWN} {BLU}UCCCCCCC
cecccccccecccci"
PRINT" (BLU) {8 SPACES}B
{1}TYPEWRITER SIMULATOR
{BLU}B": PRINTSPC (8) "JCCC
cccecccececcccccck"
PRINT" {DOWN} (CYN}
{16 SPACES}MENU OF OPERA
TIONS:"
PRINT" {DOWN} {7 SPACES}
{RVS}{YEL}1{OFF} {WHT} SE
T UP FORM IN PRINTER"
PRINT"{7 SPACES} {RVS}
{YEL}2{OFF} {WHT} SET UP
{SPACE}L-R POINTER"
PRINT"{7 SPACES} {RVS}
{YEL}3{OFF}{WHT} INPUT T
YPING ROUTINE"
PRINT" {7 SPACES}{RVS}
{YEL}4{OFF} {WHT} EXTRA L
INE FEEDS"
106 PRINT"{7 SPACES}{RVS}
{YEL}5{OFF} {WHT} QUIT P
ROGRAM"
GOSUB440:ONVAL (A$) GOTO]
20,198,250,410,438:GOTO
116
PRINT"{3 DOWN} {GRN}TO A
LIGN THE FORM, ENTER TH
E HORIZONTAL"
PRINT"COLUMN WHERE A RE
PEATED {1}X{GRN} CAN BE
PRINTED"
PRINT" {DOWN}USE SPACE T
O REPEAT THE {1}X{GRN}
{SPACE}AND RETURN TO EX
JULY 1993 COMPUTE
GS
GB
20
36
XH 46
AK 5G
AF 69
RB 76
DA 86
RR 96
JH
FP 116
SA 126
BX 136
Sc 146
G-39
PROGRAMS
FD
PR
FR
EK
SA
DS
QG
PM
HQ
XK
DM
PR
G-40
15¢
166
176
186
199
206
216
226
236
246
256
260
In";
PRINT". {2 SPACES}ENTER
{SPACE}COLUMN NUMBER:";
:INPUTN
PRINT#1,SPC(N) "X":PRINT
#1,CHR$ (27) ;CHRS (106) ;C
HRS (@) : PRINT#1,CHR$ (27)
7"Q"G
GOSUB440: IFAS=CHR$ (32)T
HEN16@
IPAS=CHRS (13) THENSG
PRINT"{2 DOWN} {GRN}ENTE
RAN {YEL}L{GRN} IF YOU
ARE PLANNING TO"
PRINT"ORIENT YOUR ENTRI
ES TO THE LEFT": PRINT
PRINT"ENTER AN {YEL}R
{GRN} IF YOU ARE PLANNI
NG TO"
PRINT"ORIENT YPUR ENTRI
ES TO THE RIGHT":PRINT"
L/R?{2 SPACES}";:GOSUB4
43:MS=AS
PRINTM$: IFM$<>"L"ANDMS<
>"R"THENLOG
GOTO5a
PRINTCHRS (14)
IFMS<>"L"ANDMS$<>"R"THEN
PRINT"{2 DOWN} {1}
{4 SPACES}L OR R LOCATO
R ?":PRINTCHRS (142) :GOT
- 0196
276
286
296
366
316
326
336
346
356
366
PRINT" {CLR} {GRN}
{2 DOWN} {5 SPACES}ENTER
AN UP ARROW ({YEL}T
{GRN}) TO QUIT"
LOS="LEFT": I FMS="R"THEN
TIGHT"
PRINT"{GRN} ENTER
THE PRINT POSITION FOR
YOUR ";LOS;:INPUT" MAR
GIN"; AS
IFAS=CHR$ (94) THENPRINT"
{CLR}"CHR$ (142) :GoTO56
IFVAL (A$) >8GORAS=""THEN
250
P=VAL (AS) :AS="": PRINT"
{5 SPACES}ENTER PHRASE
{SPACE}TO BE PRINTED
{WHT }":INPUTAS
IFA$=CHRS$ (94) THENPRINT"
{CLR} "CHR$ (142) :GOTOSG
IFM$="L"THENN=P: IFN+LEN
(A$) >8@THENPRINT"NO
{SHIFT-SPACE}ROOM
{SHIFT-SPACE }TO
{ SHIFT-SPACE}PRINT":GOT
0296
IFMS$="R"THENN=P-LEN (AS)
+1: IFN<OTHENPRINT "NO.
{ SHIFT-SPACE} ROOM
{SHIFT-SPACE}TO
{SHIFT-SPACE}PRINT":GOT
0296
PRINT#1,SPC(N) ;A$:PRINT
#1,CHRS (27) ;CHRS (106) ;C
HRS (@) : PRINT#1,CHRS (27)
COMPUTE JULY 1993
ime";
PRINT"{GRN}{5 SPACES}LI
NE FEED? ¥/N{3 SPACES}"
7 2GOSUB44:PRINTAS
IFAS$=CHRS (94) THENPRINT"
{CLR} "CHRS$ (142) :GOTO56
IFAS="Y"THENPRINT#1,"":
GOTO258
GOTO259
PRINT" {GRN}{2 DOWN}
{5 SPACES}ENTER NUMBER
{SPACE}OF LINE FEEDS";:
INPUTAS: IFVAL (A$) =@THEN
56
FORI=1TOVAL (A$) : PRINT#1
:NEXT:GOTO5@
CLOSE1:END
AS="":GETAS: [FAS=""THEN
440
RETURN
HX 376
386
396
406
416
426
438
446
456
Donald Klich is a frequent contributor.
His most recent program, CrossRef
128, appeared in the May 1993 issue.
He lives in Mount Prospect, Illinois. O
TYPING AIDS
MLX, our machine language entry
program for the 64 and 128, and
The Automatic Proofreader are util-
ities that help you type in Gazette
programs without making mis-
takes. To make room for more pro-
grams, we no longer include
these labor-saving utilities in eve-
ry issue, but they can be found on
each Gazette Disk and are printed
in all issues of Gazette through
June 1990.
If you don’t have access to a
back issue or to one of our disks,
write to us, and we'll send you
free printed copies of both of
these handy programs for you to
type in. We'll also include instruc-
tions on how to type in Gazette pro-
grams. Please enclose a self-ad-
dressed, stamped envelope. Send
a self-addressed disk mailer with
appropriate postage to receive
these programs on disk.
Write to Typing Aids, COM-
PUTE’s Gazette, 324 West Wen-
dover Avenue, Suite 200, Greens-
boro, North Carolina 27408.
ONLY
ON
DISK
In addition to the type-in programs
found in each issue of the magazine,
Gazette Disk offers bonus programs.
Here’s a special program that you'll
find only on this month's disk.
Mergee
By Robert Quinn
Kooringall, Waga Waga
NSW, Australia
This month's bonus program is a
tough, thinking-person’s game for
the 64 that can be played from the
keyboard or joystick. The game be-
gins with a playing field that's filled
with single-digit numbers, random
boxes, squares, and open spaces.
The object of Mergee is to move
the numbers around so that they
merge with other numbers and disap-
pear from play. Only like digits can
merge, however, and when all of the
numbers are gone, the game is
over. The rules are simple, but there
are a few surprises waiting for you
that'll make Mergee almost as frus-
trating to play as it is entertaining.
Public Domain Programs
Don't forget that Gazette Disk now
contains the best of public domain
Programs and shareware. For a com-
plete rundown of the programs on
this disk, see Steve Vander Ark's
“Share This" column, which makes
its debut in this issue of Gazette.
You can have these programs and
all of the type-in programs found in
this issue—ready to load and run—
by ordering the July Gazette Disk.
The price is $9.95 plus $2.00 ship-
ping and handling. Send your order
to Gazette Disk, COMPUTE Publica-
tions, 324 West Wendover Avenue,
Suite 200, Greensboro, North Caro-
lina 27408. You can order by credit
card by calling (919) 275-9809, ex-
tension 283.